WindowsForm實現折疊菜單面板


在程序開發的過程中,有時候為了讓我們程序的主要內容能夠顯示的區域更大,我們需要把一些面板折疊起來,今天就簡單介紹一種菜單面板折疊的實現。

首先,先用panel將構建出整體的頁面布局,然后在菜單面板上添加上一個折疊按鈕或者圖片控件都可以,並將控件的Anchor屬性成Top|Right,這樣在頁面折疊時,控件能夠隨着panel的寬度進行相對位置移動。

然后我們就可以為折疊按鈕添加一個事件,當點擊按鈕的時候進行面板的狀態判斷,然后設置他的寬度。而狀態變化的過程(即收縮和展開),我們通過時鍾進行處理。

private bool isCollapse = true;//面板狀態(0折疊/1展開)

// 折疊按鈕事件觸發時鍾開啟
private void button2_Click(object sender, EventArgs e)
{
    timer1.Start();
}

private void timer1_Tick(object sender, EventArgs e)
{
    if (isCollapse)
    {
        if (this.panelCollapse.Width > 40) // 面板最小寬度
        {
            this.panelCollapse.Width -= 10;
        }
        else
        {
            isCollapse = !isCollapse;
            timer1.Stop();
        }
    }
    else
    {
        if (this.panelCollapse.Width < 180) // 面板最大寬度
        {
            this.panelCollapse.Width += 10;
        }
        else
        {
            isCollapse = !isCollapse;
            timer1.Stop();
        }
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM