Compartilhar via


Rolando e colocando exibições em escala

O MFC dá suporte a modos de exibição que rolam e exibições que são dimensionadas automaticamente para o tamanho da janela de quadro que as exibe. A classe CScrollView dá suporte a ambos os tipos de exibições.

Para mais informações sobre rolagem e dimensionamento, confira a classe CScrollView na Referência do MFC. Para um exemplo de rolagem, confira o exemplo de Rabisco.

O que mais você deseja saber?

Como rolar uma exibição

Frequentemente, um documento é maior do que a exibição pode mostrar. Isso pode ocorrer porque os dados do documento aumentam ou o usuário reduz a janela que enquadra o modo de exibição. Nesses casos, a exibição deve dar suporte para rolagem.

Qualquer exibição pode manipular mensagens de barra de rolagem em suas funções de membro OnHScroll e OnVScroll. Você pode implementar o tratamento de mensagens de barra de rolagem nessas funções, fazendo todo o trabalho por conta própria ou pode usar a classe CScrollView para manipular a rolagem para você.

CScrollView faz o seguinte:

  • Gerencia tamanhos de janela e de visor e modos de mapeamento

  • Rola automaticamente em resposta a mensagens de barra de rolagem

Você pode especificar quanto rolar para uma "página" (quando o usuário clica em um eixo de barra de rolagem) e uma "linha" (quando o usuário clica em uma seta de rolagem). Planeje esses valores para se adequar à natureza da sua exibição. Por exemplo, talvez você queira rolar em incrementos de 1 pixel para uma exibição gráfica, mas em incrementos com base na altura da linha em documentos de texto.

Como escalar uma exibição

Quando quiser que o modo de exibição se ajuste automaticamente ao tamanho da janela de quadro, você poderá usar CScrollView para dimensionamento em vez de rolagem. O modo de exibição lógico é estendido ou encolhido para se ajustar exatamente à área de cliente da janela. Um modo de exibição dimensionado não tem barras de rolagem.

Confira também

Usando exibições