如何在c#中更改子程序中的操作?
我写了一个代码,当我点击一个按钮时,会使picturebox移动。例如,右按钮使用以下代码:如何在c#中更改子程序中的操作?,c#,forms,winforms,C#,Forms,Winforms,我写了一个代码,当我点击一个按钮时,会使picturebox移动。例如,右按钮使用以下代码: private void btnRight_Click(object sender, EventArgs e) { //move right if (stopThePlayer == true) { return; } else { x = x + speed; RightBoundary()
private void btnRight_Click(object sender, EventArgs e)
{
//move right
if (stopThePlayer == true)
{
return;
}
else
{
x = x + speed;
RightBoundary();
MovingSubprograms();
}
}
不要担心子程序。我想知道的是有一种方法我只能改变
x=x+速度代码>零件。例如,在左侧按钮中,我想使其x=x-speed
。所以基本上我只创建一个子程序,只修改代码。可能吗?谢谢。您最好创建一个函数,该函数接受您想要更改的参数:
private void MovePlayer(int offset)
{
//move right
if (stopThePlayer == true)
{
return;
}
else
{
x = x + offset;
RightBoundary();
MovingSubprograms();
}
}
private void btnRight_Click(object sender, EventArgs e)
{
MovePlayer(speed);
}
private void btnLeft_Click(object sender, EventArgs e)
{
MovePlayer(speed*-1);
}
位置属性是一个基本上是坐标的点。因此,从当前位置创建一个新点根据功能添加和减除x,并将位置属性设置为该点simpleYou不会创建“子程序”。您将创建另一个事件处理程序来处理btnLeft_Click事件,并执行您所说的操作(除了x=x-speed
之外,所有代码都是相同的)。但实际上不要重复代码,将其放在单独的函数中……当然,这会将您带到@JohnKoerner answer。这很有意义。谢谢!