CScrollView::SetScrollSizes
De telefonarSetScrollSizes Quando o modo de exibição está prestes a ser atualizado.
void SetScrollSizes(
int nMapMode,
SIZE sizeTotal,
const SIZE& sizePage = sizeDefault,
const SIZE& sizeLine = sizeDefault
);
Parâmetros
nMapMode
O modo de mapeamento para conjunto para este modo de exibição.Valores possíveis incluem:Modo de mapeamento
Unidade lógica
Eixo y positivo estende...
MM_TEXT
1 pixel
Para baixo
MM_HIMETRIC
0,01 mm
Para cima
MM_TWIPS
1/1440 de
Para cima
MM_HIENGLISH
0,025 mm
Para cima
MM_LOMETRIC
0,1 mm
Para cima
MM_LOENGLISH
0,25 mm
Para cima
Todos esses modos são definidos pelo Windows.Dois modos de mapeamento padrão: MM_ISOTROPIC e MM_ANISOTROPIC, não são usadas para CScrollView. A biblioteca de classes fornece o SetScaleToFitSize função de membro para dimensionar o modo de exibição para o tamanho da janela. A coluna três na tabela acima descreve a orientação de coordenada.
sizeTotal
O dimensionar total da exibição da rolar.The CX membro contém a extensão horizontal.The CY membro contém a extensão vertical.Tamanhos estão em unidades lógicas.Ambos os CX and CY deve ser maior que ou igual a 0.sizePage
Os valores horizontais e verticais para rolar em cada direção em resposta a um clique do mouse em uma rolagem - BAR eixo.The CX membro contém a quantidade horizontal.The CY membro contém o vertical.sizeLine
Os valores horizontais e verticais para rolar em cada direção em resposta a um mouse clicar uma seta de rolagem.The CX membro contém a quantidade horizontal.The CY membro contém o vertical.
Comentários
telefonar-lo na sua substituir do OnUpdate função de membro para ajustar as características de rolagem quando, por exemplo, o documento é exibido inicialmente ou quando ele altera o dimensionar.
Você normalmente irá obter as informações de dimensionar no documento associado do modo de exibição, chamando uma função de membro de documento, talvez chamada GetMyDocSize, fornecido com sua classe derivada de documento. O código a seguir mostra essa abordagem:
CMyScrollDoc* pMyDoc = (CMyScrollDoc*)GetDocument();
SetScrollSizes(nMapMode, pMyDoc->GetMyDocSize());
sistema autônomo alternativa, às vezes, convém conjunto um dimensionar fixo, sistema autônomo no código a seguir:
SetScrollSizes(nMapMode, CSize(100, 100));
Você deve conjunto o modo de mapeamento para qualquer um dos modos de mapeamento de Windows, exceto MM_ISOTROPIC ou MM_ANISOTROPIC. Se você quiser usar um modo de mapeamento irrestrita, telefonar o SetScaleToFitSize função de membro em vez de SetScrollSizes.
Exemplo
void CMyScrollView::OnUpdate(CView* /*pSender*/, LPARAM /*lHint*/,
CObject* /*pHint*/)
{
// Implement a GetMyDocSize() member function in
// your document class; it returns a CSize.
CMyScrollDoc* pMyDoc = (CMyScrollDoc*)GetDocument();
SetScrollSizes(MM_LOENGLISH, pMyDoc->GetMyDocSize());
ResizeParentToFit(); // Default bShrinkOnly argument
}
void CMyScrollView::OnInitialUpdate()
{
CScrollView::OnInitialUpdate();
// The GetMyDocSize() member function is implemented in
// your document class. The return type is CSize.
CMyScrollDoc* pMyDoc = (CMyScrollDoc*)GetDocument();
SetScrollSizes(MM_TEXT, pMyDoc->GetMyDocSize());
}
Requisitos
Cabeçalho: afxwin.h
Consulte também
Referência
CScrollView::SetScaleToFitSize
CScrollView::GetDeviceScrollSizes