Sdílet prostřednictvím


Postupy: Definování chování změny velikosti a umístění v rozděleném okně

Panely ovládacího prvku SplitContainer se dobře hodí ke změně velikosti a manipulaci s nimi uživateli. Někdy ale budete chtít rozdělovač ovládat programově – kde je umístěn a do jaké míry se dá přesunout.

Vlastnost SplitterIncrement a další vlastnosti ovládacího prvku SplitContainer poskytují přesnou kontrolu nad chováním uživatelského rozhraní podle vašich potřeb. Tyto vlastnosti jsou uvedeny v následující tabulce.

Název Popis
IsSplitterFixed vlastnost Určuje, zda je rozdělovač pohyblivý pomocí klávesnice nebo myši.
SplitterDistance vlastnost Určuje vzdálenost v pixelech od levého nebo horního okraje k pohyblivému rozdělovači.
SplitterIncrement vlastnost Určuje minimální vzdálenost v pixelech, kterou může rozdělovač přesunout uživatel.

Následující příklad upraví vlastnost SplitterIncrement tak, aby vytvořil efekt "přichytávacího rozdělovače"; když uživatel přetáhne rozdělovač, posouvá se po krocích 10 pixelů místo výchozího 1 pixelu.

Definovat chování změny velikosti pro SplitContainer

  1. V postupu nastavte vlastnost SplitterIncrement na požadovanou velikost, aby bylo dosaženo přichycení rozdělovače.

    V následujícím příkladu kódu je v rámci události Load formuláře rozdělovač v ovládacím prvku SplitContainer nastaven tak, aby při přetažení poskočil o 10 pixelů.

    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#) Do konstruktoru formuláře umístěte následující kód pro registraci obsluhy události.

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

    Přesunutí rozdělovače mírně doleva nebo doprava nebude mít žádný rozpoznatelný účinek; pokud však ukazatel myši přejde do libovolného směru o 10 pixelů, rozdělovač se přichytí k nové pozici.

Viz také