C#如何滑动面板

时间:2013-09-27 12:40:03

标签: c# panel slide

此代码只是改变位置,而不是滑动。

我现在正在使用它:

for (int i = 740; i == 740; i++)
{
   panel2.Location = new Point(panel2.Location.X - i, panel2.Location.Y);      
}

如何慢慢滑动面板?

2 个答案:

答案 0 :(得分:0)

现在,正如我在评论中所说,你真的需要使用float值,所以你真的需要绘制它。但是,当前实现仅进行单次迭代。目前的循环可能已经转化为:

panel2.Location = new Point(panel2.Location.X - 740, panel2.Location.Y);

考虑这样的循环将其滑出:

for (int i = -(panel2.Width); i < 0; i++)
{
   panel2.Location = new Point(i, panel2.Location.Y);
}

该算法假设您已将Location设置为其宽度的-(例如-740x),以便在屏幕上看不到它。反过来会隐藏它。

这仍然会有点不稳定,但它不会像当前代码一样隐藏

答案 1 :(得分:0)

如果您要滑动面板,请尝试执行此操作

试试这段代码:

Panel panelArray = new Panel[];
Panel panel2 = panelArray[0];



for (int i = 0; i <= 100; i++)
{
    panel2.Location = new Point(panel2.Location.X - i, panel2.Location.Y);
    System.Threading.Thread.Sleep(10);
}