面板未按预期移动

本文关键字:移动 | 更新日期: 2024-09-19 17:24:12

我有一个滑动面板,当我点击按钮时它会打开,但当我想关闭它时,它什么都没做——我做错了什么?我试过使用各种计时器,但似乎都不起作用。

    public void open()
    {
        if (panel2.Location.X < 125)
        {
            panel1.Width--;
            panel2.Width--;
        }
    }
    private void timer1_Tick(object sender, EventArgs e)
    {
        open();
        timer1.Interval = 10 * (1);
    }
    public void close()
    {
        if (panel2.Location.X > 125)
        {
            panel1.Width++;
            panel2.Width++;
        }
    }
    private void timer2_Tick(object sender, EventArgs e)
    {
        close();
        timer2.Interval = 10 * (1);
    }
}      

面板未按预期移动

根据您的代码,如果panel2X坐标小于或等于125,则close方法不会调整任何大小。

也许你的逻辑有问题(无论你试图做什么)
open方法中,只有当panel2的X坐标小于125时,才能减小两个面板的width

当然,使panel2的X坐标小于125意味着闭合方法不能增加宽度。