【发布时间】:2015-10-24 08:21:14
【问题描述】:
我正在尝试制作一个矩形顺时针移动的 Windows 窗体应用程序。这是图像。
这是我的代码。
public partial class Form1 : Form
{
int x;
int y;
public Form1()
{
InitializeComponent();
}
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.FillRectangle(Brushes.Crimson, x, y, 20, 20);
}
private void movingTimer_Tick(object sender, EventArgs e)
{
while (true)
{
if (x < 750)
{
x += 5;
}
else if (x == 750 && y < 340)
{
y += 5;
}
break;
}
Invalidate();
}
}
我明白为什么我不能更进一步。如果我使用 x -= 5 创建新的 if 语句,它将与 while 循环同时激活。 我无法理解的是如何分隔新命令(x -= 5 和 y -= 5) 所以只有在我的第一个 while 循环完成后才会激活它。
【问题讨论】:
标签: c# if-statement while-loop