Habilitando o menu de Zoom e o Zoom de Área nas telas do E3.

Quando o operador precisa ampliar uma região da tela em tempo de execução, o menu de Zoom (botão direito) e o Zoom de Área resolvem — desde que Viewer e Telas estejam configurados.

1. O que é o menu de Zoom (e o Zoom de Área)

O menu de Zoom permite ampliar uma região específica da tela em tempo de execução. É um menu de contexto acionado com o botão direito do mouse sobre a tela em execução e reúne as opções de ampliação e redução, incluindo o Zoom de Área — o modo em que o usuário desenha um retângulo com o mouse e a tela é ampliada para enquadrar exatamente aquela região. Este artigo mostra quais propriedades configurar — no Viewer, nas Telas e no comando OpenScreen — para habilitar esse menu.

Para que esse recurso funcione, três comportamentos precisam estar habilitados:

  • Exibir o menu de contexto de Zoom ao clicar com o botão direito (AllowContextMenu);
  • Permitir a alteração do zoom em tempo de execução (AllowZoomChange);
  • Centralizar a tela para que a região ampliada seja posicionada e navegável de forma previsível (ScreenAlignment).

Essas propriedades existem tanto no Viewer (valem como padrão para toda a aplicação e para a Tela Inicial) quanto em cada Tela (podem herdar do Viewer ou ser definidas individualmente).

2. Propriedades envolvidas

Propriedade No Viewer Nas Telas Função
AllowContextMenu True ou False 0 (ppDefault), 1 (ppAllow) ou 2 (ppBlock) Exibe o menu de Zoom ao clicar com o botão direito
AllowZoomChange True ou False 0 (ppDefault), 1 (ppAllow) ou 2 (ppBlock) Permite alterar o zoom em tempo de execução
ScreenAlignment 1 (paTopLeft) ou 2 (paCenter) 0 (paDefault), 1 (paTopLeft) ou 2 (paCenter) Alinhamento da tela dentro do Viewer

Nas Telas, os valores Default fazem a Tela herdar as configurações do Viewer destas propriedades; qualquer outra opção força explicitamente o recurso naquela Tela. Como o padrão de fábrica da propriedade ScreenAlignment do Viewer é paTopLeft, para exibir o Zoom de Área é preciso alterá-la para paCenter no Viewer, ou diretamente na Tela desejada, ou forçar o parâmetro de alinhamento do comando que abre a Tela.

Hierarquia de configuração

O alinhamento, o zoom e a barra de rolagem seguem uma ordem de precedência: a configuração do Viewer é a base; a configuração de cada Tela prevalece sobre a do Viewer (quando não está em default); e os parâmetros do OpenScreen prevalecem sobre todos. Assim, se o OpenScreen não informar parâmetros (apenas o nome da Tela), vale a configuração da Tela; se, além disso, a Tela estiver toda em default, vale a configuração do Viewer.

Por que a centralização importa?

Com a tela centralizada (paCenter), a região ampliada pelo Zoom de Área é posicionada de forma consistente e a barra de rolagem permite navegar por todo o conteúdo — inclusive liberando o deslocamento (pan) da tela mesmo quando ela cabe na área visível. Com paTopLeft, a tela permanece “colada” no canto superior esquerdo ao ampliar.

3. Como habilitar

Pelo E3 Studio — no Viewer

Na lista de propriedades do objeto Viewer, no grupo Comportamento, ajuste:

  • AllowContextMenu = True
  • AllowZoomChange = True
  • ScreenAlignment = 2 - paCenter
Lista de propriedades do Viewer com AllowContextMenu, AllowZoomChange e ScreenAlignment destacadas
Lista de propriedades do Viewer, no grupo Comportamento.

A aba Visualizador da janela de propriedades do Viewer traz, além disso, ajustes específicos da Tela Inicial:

  • Alinhamento da Tela: Forçar Centralizado — centraliza a abertura da Tela Inicial;
  • marque Habilitar barra de rolagem na Tela Inicial para permitir navegar pela região ampliada;
  • marque Exibir o menu do Zoom ao clicar com o botão direito do mouse (propriedade AllowContextMenu) — obrigatório para o menu de Zoom aparecer.
Aba Visualizador da janela de propriedades do Viewer com o alinhamento centralizado, a barra de rolagem e o menu de Zoom habilitados
Aba Visualizador da janela de propriedades do Viewer.

Atenção — há dois “Alinhamento da Tela” diferentes

O campo Alinhamento da Tela desta aba não altera a propriedade ScreenAlignment do Viewer: ele define o alinhamento apenas da abertura da Tela Inicial. O alinhamento das demais Telas é governado pela propriedade ScreenAlignment (na lista de propriedades) e por cada Tela. Portanto, ajuste sempre a propriedade ScreenAlignment na lista de propriedades — não apenas o combo desta aba.

Pelo E3 Studio — nas Telas

A configuração do Viewer atende à Tela Inicial. As demais Telas devem atender individualmente às propriedades. Na lista de propriedades de cada Tela, no grupo Comportamento, ajuste:

  • AllowContextMenu = 1 - ppAllow (ou 0 - ppDefault para herdar do Viewer)
  • AllowZoomChange = 1 - ppAllow (ou 0 - ppDefault para herdar do Viewer)
  • ScreenAlignment = 2 - paCenter (ou 0 - paDefault para herdar do Viewer)
Lista de propriedades de uma Tela com AllowContextMenu, AllowZoomChange e ScreenAlignment destacadas
Lista de propriedades de uma Tela, no grupo Comportamento.

Por script (comando OpenScreen)

Ao abrir uma tela por script com OpenScreen, é possível passar os parâmetros de zoom, barra de rolagem e alinhamento diretamente na string da tela, no formato Tela?Zoom?Scroll?Align:

VBScript
' Abre a Tela2 em 100%, com barra de rolagem quando necessária e centralizada
Application.GetFrame("").OpenScreen "Tela2?100?1?2", 0

Onde:

Componente Valor no exemplo Significado
Zoom 100 Escala de 100% (tamanho nativo — ideal para o Zoom de Área)
Scroll 1 Barra de rolagem exibida quando necessário (0 = nunca, 2 = sempre)
Align 2 Tela centralizada no frame

Também vale para o DoModal

Os mesmos parâmetros de zoom, barra de rolagem e alinhamento, junto ao nome da tela e separados por ?, aplicam-se ao abrir uma tela como janela modal com DoModal — por exemplo, Application.DoModal(Application.GetScreen("Tela2?100?1?2"), "Título", 100, 100, 400, 300, "").

4. Resultado

Com as propriedades habilitadas, ao clicar com o botão direito sobre a tela em execução o operador passa a ver o menu de contexto. A partir dele é possível acionar diferentes níveis de zoom — modos como Toda Tela e Preencher, percentuais fixos (de 10% a 10000%) e o Zoom de Área, que permite arrastar um retângulo sobre a região de interesse para ampliá-la. A barra de rolagem permite então navegar por todo o conteúdo da tela ampliada. O menu também oferece opções de Alinhamento, Qualidade, Enquadrar e Mover.

Menu de contexto exibido ao clicar com o botão direito na tela, com os modos de zoom, os percentuais, o Zoom de Área e as opções de alinhamento
Menu de contexto com as opções de zoom, alinhamento e o Zoom de Área.

5. Observações e boas práticas

  • Escala fixa favorece o Zoom de Área. Para ampliar uma região é preciso que exista detalhe a ser ampliado. Abrir a tela em uma escala fixa (ex.: 100%) mantém o conteúdo em tamanho nativo. O modo Preencher estica a tela para ocupar todo o Viewer, o que reduz o proveito da ampliação por área.
  • Habilite a barra de rolagem. Sem ela, as opções Zoom de Área, Enquadrar e Mover não ficam disponíveis no menu, e o usuário não consegue navegar pelas demais partes da tela ampliada.
  • Herança pelo ppDefault. Definir as propriedades no Viewer e deixar as Telas em ppDefault centraliza a configuração em um único ponto — útil em aplicações com muitas telas.
  • Vale para toda Tela que deve permitir zoom. As opções de zoom, alinhamento e barra de rolagem definidas na aba Visualizador da janela de propriedades do Viewer cobrem apenas a Tela Inicial. Para as demais Telas, valem as propriedades do Viewer e de cada Tela — por herança ou definidas explicitamente.
  • Alinhamento pelo próprio menu. O menu de contexto também traz Alinhamento (Esta Tela) e Alinhamento (Todas as Telas), permitindo ao operador forçar o alinhamento em tempo de execução — útil para reposicionar a tela após uma ampliação. Esse ajuste tem precedência sobre o definido nas propriedades.
Print Friendly, PDF & Email

Este artigo foi útil? Was this helpful?

Classificação média - Average rating 0 / 5. Count: 0

Leave a Reply

Your email address will not be published.Required fields are marked *