Partilhar via


Como: Definir o comportamento de redimensionamento e posicionamento em uma janela dividida

Os painéis do controle SplitContainer se prestam bem a serem redimensionados e manipulados pelos usuários. No entanto, haverá momentos em que você desejará controlar programaticamente o divisor — onde ele está posicionado e até que ponto pode ser movido.

A propriedade SplitterIncrement e as outras propriedades no controle SplitContainer oferecem controle preciso sobre o comportamento da interface do usuário para atender às suas necessidades. Essas propriedades estão listadas na tabela a seguir.

Nome Descrição
IsSplitterFixed propriedade Determina se o divisor é móvel por meio do teclado ou mouse.
SplitterDistance propriedade Determina a distância em pixels da borda esquerda ou superior até a barra divisória móvel.
SplitterIncrement propriedade Determina a distância mínima, em pixels, que o divisor pode ser movido pelo usuário.

O exemplo abaixo modifica a propriedade SplitterIncrement para criar um efeito "snapping splitter"; Quando o usuário arrasta o divisor, ele aumenta em unidades de 10 pixels em vez do padrão 1.

Para definir o comportamento de redimensionamento do SplitContainer

  1. Num procedimento, configure a propriedade SplitterIncrement para o tamanho desejado, de modo que o comportamento de 'encaixe' do divisor seja alcançado.

    No exemplo de código a seguir, dentro do evento Load do formulário, o divisor dentro do controle SplitContainer é definido para saltar 10 pixels quando arrastado.

    Private Sub Form1_Load(ByVal sender As System.Object, _  
        ByVal e As System.EventArgs) Handles MyBase.Load  
        Dim splitSnapper as new SplitContainer()  
        splitSnapper.SplitterIncrement = 10  
        splitSnapper.Dock = DockStyle.Fill  
        splitSnapper.Parent = me  
    End Sub  
    
    private void Form1_Load(System.Object sender, System.EventArgs e)  
    {  
        SplitContainer splitSnapper = new SplitContainer();  
        splitSnapper.SplitterIncrement = 10;  
        splitSnapper.Dock = DockStyle.Fill;  
        splitSnapper.Parent = this;  
    }  
    

    (Visual C#) Coloque o código a seguir no construtor do formulário para registrar o manipulador de eventos.

    this.Load += new System.EventHandler(this.Form1_Load);  
    

    Mover o divisor ligeiramente para a esquerda ou para a direita não terá efeito percetível; No entanto, quando o ponteiro do mouse vai 10 pixels em qualquer direção, o divisor irá se ajustar à nova posição.

Ver também