Compartilhar via


CWnd::ScrollWindowEx

Rola o Sumário da área de cliente da janela.

int ScrollWindowEx(
   int dx,
   int dy,
   LPCRECT lpRectScroll,
   LPCRECT lpRectClip,
   CRgn* prgnUpdate,
   LPRECT lpRectUpdate,
   UINT flags 
); 

Parâmetros

  • dx
    Especifica a quantidade, em unidades de dispositivo, de rolagem horizontal.Este parâmetro deve ter um valor negativo para rolar para a esquerda.

  • dy
    Especifica a quantidade, em unidades de dispositivo, de rolagem vertical.Este parâmetro deve ter um valor negativo para rolar para cima.

  • lpRectScroll
    Aponta para um RECT estrutura que especifica a parte da área de cliente a ser rolado.Se esse parâmetro for NULO, toda a área de cliente é rolada.

  • lpRectClip
    Aponta para um RECT estrutura que especifica o retângulo de recorte para rolar. Essa estrutura tem precedência sobre o retângulo apontado por lpRectScroll. Somente os bits dentro desse retângulo serão rolados.Bits fora desse retângulo não são afetados, mesmo que estejam no lpRectScroll retângulo. Se esse parâmetro for NULO, sem corte é executada no retângulo de rolar.

  • prgnUpdate
    Identifica a região que é modificada para conter a região invalidada rolando.Este parâmetro pode ser NULO.

  • lpRectUpdate
    Aponta para um RECT estrutura que receberá os limites do retângulo invalidado rolando. Este parâmetro pode ser NULO.

  • flags
    Pode ter um dos seguintes valores:

    • SW_ERASE   Quando especificado com SW_INVALIDATE, apaga a região recém-invalidada, enviando um WM_ERASEBKGND mensagem para a janela.

    • SW_INVALIDATE   Invalida região identificada pelo prgnUpdate após a rolagem.

    • SW_SCROLLCHILDREN   Rola a todas as janelas filho que fazem interseção com o retângulo apontado por lpRectScroll pelo número de pixels especificados na dx e dy.O Windows envia um WM_MOVE mensagem todas as janelas filho que fazem interseção lpRectScroll, mesmo se eles não serão movidas. O cursor será reposicionado quando uma janela filho é rolada e o retângulo de cursor intercepta o retângulo de rolar.

Valor de retorno

O valor retornado é SIMPLEREGION (região retangular invalidada), COMPLEXREGION (região invalidado não retangular; retângulos sobrepostos), ou NULLREGION (nenhuma região invalidada), se a função for bem-sucedida; caso contrário, o valor retornado é ERRO.

Comentários

Essa função é semelhante a ScrollWindow função, com alguns recursos adicionais.

If SW_INVALIDATE and SW_ERASE não forem especificados, a ScrollWindowEx função de membro não invalida a área que é rolada longe. Se qualquer desses sinalizadores é conjunto, ScrollWindowEx invalida nessa área. A área não é atualizada até que o aplicativo chama o UpdateWindow função de membro , chama o RedrawWindow função de membro (especificar RDW_UPDATENOW or RDW_ERASENOW), ou recupera o WM_PAINT mensagem da fila de aplicativo.

Se a janela tiver o WS_CLIPCHILDREN estilo, as áreas retornados especificados por prgnUpdate and lpRectUpdate representam a área total da janela rolada que deve ser atualizada, incluindo todas as áreas em janelas filho que precisam de atualização.

Se o SW_SCROLLCHILDREN sinalizar for especificado, o Windows não corretamente atualizará a tela se parte de uma janela filho é rolada.A parte da janela filho rolados que se encontra fora do retângulo de fonte não será apagado e não irá ser redesenhado corretamente seu novo destino.Use o DeferWindowPos Função do Windows para mover filho janelas que não estar completamente dentro de lpRectScroll retângulo. O cursor é reposicionado se o SW_SCROLLCHILDRENsinalizar de conjunto e o retângulo de cursor intercepta o retângulo de rolar.

Todas as coordenadas de entrada e saídas (para lpRectScroll, lpRectClip, lpRectUpdate, e prgnUpdate) são considerados nas coordenadas do cliente, independentemente da janela ter o CS_OWNDC or CS_CLASSDC estilo de classe.Use o LPtoDP and DPtoLP Funções do Windows para converter e para as coordenadas lógicas, se necessário.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe CWnd

Gráfico de hierarquia

CWnd::RedrawWindow

CDC::ScrollDC

CWnd::ScrollWindow

CWnd::UpdateWindow

DeferWindowPos

ScrollWindowEx

Outros recursos

Membros CWnd