我是一名初学者程序员,感觉自己在重复编写代码。我想制作一个由16个图片框组成的拼图游戏。问题在于,我感觉每个图片框的事件都需要重复编写代码,就像以下示例一样:
Point move;
bool isDragging = false;
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
isDragging = true;
move = e.Location;
}
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if(isDragging == true)
{
pictureBox1.Left += e.X - move.X;
pictureBox1.Top += e.Y - move.Y;
pictureBox1.BringToFront();
}
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
isDragging = false;
}
pictureBoxX
和其他必要的变量(例如e.X
、move.X
)作为参数检索,并在每个pictureBoxX_...
事件函数中调用它。 - RhinoDevelIsDragging == true
拿出来。在if
语句的括号内部的表达式是一个布尔表达式。无论你在括号里放什么,都会被转换成true
或者false
。true == true
的结果是 true,而false == true
的结果是 false。或者换句话说,== true
部分没有任何作用,所以你可以直接写成if(IsDragging)
。 - Richard Irons