C# 如何在按键时执行操作
当你按下一个键做一个动作,当你再次按下它时,在C中停止做 我想做的是:我有一个程序,用户必须按F1来激活任何动作,好吧;如果用户不按另一个键,而是按同一个键,那么在C语言中该怎么做呢?由于我当前通过执行以下操作停止操作:C# 如何在按键时执行操作,c#,winforms,C#,Winforms,当你按下一个键做一个动作,当你再次按下它时,在C中停止做 我想做的是:我有一个程序,用户必须按F1来激活任何动作,好吧;如果用户不按另一个键,而是按同一个键,那么在C语言中该怎么做呢?由于我当前通过执行以下操作停止操作: if (GetAsyncKeyState(Keys.F1) == -32767) { timer1.Start(); } if (GetAsyncKeyState(Keys.F2) == -32767) { timer1.Stop(); } 您可以使用Syst
if (GetAsyncKeyState(Keys.F1) == -32767)
{
timer1.Start();
}
if (GetAsyncKeyState(Keys.F2) == -32767)
{
timer1.Stop();
}
您可以使用System.Timers.Timer
您正在构建什么类型的应用程序?Console、WPF、Forms或UWP?这是一个以Form制作的应用程序。最简单的方法是在按键时进行布尔切换。我尝试过,例如,我做了以下操作:bool activado;activado=GetAsyncKeyStateKeys.F1!=0; 如果activado{tInitial.Start;}但我还没有结果..使用按钮更新你的问题。是的,我应该将我的评论作为答案发布^^^接受我的+1我有一个问题,我使用GetAsyncKeyState来执行操作,它会以同样的方式工作吗?@AurelioGálvez,是的,它应该可以工作,因为您需要管理密钥的相对整数值。其他一切都一样。这段代码正在运行。@Rafalon谢谢你,伙计:@GaurangDave非常感谢,它运行得非常好!
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode == Key.A)
{
if(!timer1.Enabled)
timer1.Start();
else
timer1.Stop();
}
}