
要求1:实现点击”前进“,”小车“能够向上走,点击”后退“,小车停止向前开始向下,点击”停止“,”小车“停在当前位置
2:”小车“不能瞬移
我现在能让小车向上向下走,但是无法让小车正在向上走的过程中停止或者向下,C#新手,望各位大神指教,感激不尽!
------解决思路----------------------
既然你都做到了让小车向上走了,停止反而不会做?我想问为啥
------解决思路----------------------
贴代码吧,很难理解为什么你不能停止
------解决思路----------------------
你先说说目前的思路,你是怎么做的
放个伪代码更好
------解决思路----------------------
直接將小车位移的代码放 timer 里面.
定义一个全局变量, move.
移动, timer 的 enabled 为true ;
timer 事件:
private void timer1_Tick(object sender, EventArgs e)
{
button1.Top = button1.Top + move;
}
private void 上移_Click(object sender, EventArgs e)
{
move = -1;
timer1.Enabled = true;
}
private void 下移_Click(object sender, EventArgs e)
{
move = 1;
timer1.Enabled = true;
}
private void 停止_Click(object sender, EventArgs e)
{
move = 0;
timer1.Enabled = false;
}
------解决思路----------------------
楼主我试了你的代码,没有任何更改,完全可以在小车前进的过程中停止或者后退。
------解决思路----------------------
停止或者向下
->停止timer,设置margin 就可以了。
------解决思路----------------------
按下后一直保持移动吗?你可以在停止按钮里让执行Move()的条件停止,使用timer就timer.Enable=false,子线程就abort或sleep
不过做成按钮按下的时候移动,释放的时候停止,更有意思一些
private void button_KeyDown(object sender, KeyEventArgs e)
{
move();
}