【发布时间】:2012-07-26 20:24:11
【问题描述】:
我目前正在开发一个 C# 应用程序。现在我正在尝试实现一个简单的滑块:
|--------------------------|
| |
| |--------------------| |
| | | |
| | Panel1 | |
| | Panel2 | |
| | | |
| |--------------------| |
| x x x |
|--------------------------|
我有两个尺寸完全相同的面板。 Panel1 仅用于显示边框并为 panel2 设置边界,然后动态交换。
如果第二个 x 被点击,panel2 应该向左移动,panel3 应该从右边来并且也向左移动。
基本上我有以下代码:
Panel panel2 = panelArray[0];
Panel panel3 = panelArray[1];
下面的代码现在应该执行幻灯片:
for (int i = 0; i <= 100; i++)
{
panel2.Location = new Point(panel2.Location.X - i, panel2.Location.Y);
System.Threading.Thread.Sleep(10);
}
for (int i = 0; i <= 100; i++)
{
panel3.Location = new Point(100 - i, panel3.Location.Y);
System.Threading.Thread.Sleep(10);
}
不知何故,第一个面板完美滑出,但面板 2 没有滑动。它只是在循环执行后显示。
知道为什么 panel2 不执行幻灯片吗?我正在使用 WinForms。
【问题讨论】: