【发布时间】:2016-04-07 15:14:08
【问题描述】:
我正在使用 WinForms。在我的表单中,我有一个带有可移动面板的按钮的面板。例如,向上和向下按钮可以向上或向下移动面板。我很难用相应的按钮左右移动面板。我做错了什么?
private void Up_btn_Click(object sender, EventArgs e)
{
if (panel1.Location.Y > -2000)
{
panel1.Location = new Point(panel1.Location.X, panel1.Location.Y - 80);
}
}
private void Down_btn_Click(object sender, EventArgs e)
{
if (panel1.Location.Y < 720)
{
panel1.Location = new Point(panel1.Location.X, panel1.Location.Y + 80);
}
}
private void Left_btn_Click(object sender, EventArgs e)
{
if (panel1.Location.X < 720)
{
panel1.Location = new Point(panel1.Location.Y , panel1.Location.X + +55);
}
}
private void Right_btn_Click(object sender, EventArgs e)
{
if (panel1.Location.X < 720)
{
panel1.Location = new Point(panel1.Location.Y, panel1.Location.X -55);
}
}
【问题讨论】:
-
有什么问题?
-
在您的最后 2 个位置中,x 和 y 的顺序不正确。
-
这一行 panel1.Location = new Point(panel1.Location.Y , panel1.Location.X + +55);那里有双
+标志。 -
不客气 :) 此外,如果您使用
>-y的 up 条件和<y的 down 条件,您可能需要左右>-x和<x的这种逻辑 -
@taji01 欢迎您。很高兴答案对您有任何帮助。正如我在答案中提到的那样,我们知道我们确实有时也因为这个问题而破坏了我们的数学测试......;)
标签: c# .net winforms panel move