其實你開始一個while循環不會退出,直到你的單選按鈕是窗體頂端你是否還在按下按鈕。你可以通過在你的循環中放入一個Thread.Sleep來減慢它的速度。
private void up_MouseDown(object sender, MouseEventArgs e)
{
while (P.Location.Y > 0)
{
P.Location = new System.Drawing.Point(P.Location.X, P.Location.Y - 1);
System.Threading.Thread.Sleep(10);
}
}
如果你想有更好的控制我會使用一個計時器。在本例中,間隔設置爲10.
private void up_MouseDown(object sender, MouseEventArgs e)
{
timer1.Start();
}
private void up_MouseUp(object sender, MouseEventArgs e)
{
timer1.Stop();
}
private void timer1_Tick(object sender, EventArgs e)
{
if (P.Location.Y > 0)
{
P.Location = new System.Drawing.Point(P.Location.X, P.Location.Y - 1);
}
}
**非常感謝我沒有使用計時器** –
@AmjadArab歡迎您,如果有任何一個答案,你得到了答案你的問題一定要點擊複選框右邊的答案,它會將問題標記爲正在回答,您和回答者會得到一些迴應。 –