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
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
.NET Desktop feedback