请问怎么防止长按一个键重复触发OnKeyDownEven里的语句 各位同学,我想在OnKeyDownEven事件中处理按键按下后的动作,只想它每次按下时处理一次,但是长按按键时会一直触发OnKeyDownEven,请问要怎么解决?如何判断是否长按了某个键? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 操作系统设置里就是长按按键时会一直触发OnKeyDownEven 记录上次按键的时间,每次触发事件时用date.now-上次时间,小于你设定的时间则return。 相应代码还不是一样么? 例如 我记录的是按下A键的处理代码时间,那么长按A键还是会一直触发事件和A键的代码 我不知道你到底有没有动手试试,说句不中听的话:想当然的态度是找不到解决问题的办法的。 DateTime t; int iCount; private void Form1_Load(object sender, EventArgs e) { t = DateTime.Now; } private void textBox1_KeyDown(object sender, KeyEventArgs e) { if ((DateTime.Now - t).TotalSeconds > 3) { iCount++; this.Text = "这是第" + iCount + "次触发KeyDown"; t = DateTime.Now; } } 楼上的方法应该可以,或者在keyup事件里释放也是中可行的方法。楼主你这种态度问问题还是别来问了 remoting客户端配置文件 C#基础啊... 关于C#连接Access数据库(在线) 关于论坛发帖机器的实现,有思路或者源代码的使劲砸我吧,顶者有分啊 如何使用string.Format dll调用问题 因项目需要,要在C#里面置入汇编,求助! 下面程序出现了一个错误,各位CSDN路过的朋友能否帮我看一下,我将以为数不多的分数相送。 有人用c#访问过sybase数据库吗? 请教好心人:winform 64位 anycpu下需要导入excel 进者有分,关于浏览器链接问题 C# xml文件操作问题 求解决!!!!!!
DateTime t;
int iCount; private void Form1_Load(object sender, EventArgs e)
{
t = DateTime.Now;
} private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if ((DateTime.Now - t).TotalSeconds > 3)
{
iCount++;
this.Text = "这是第" + iCount + "次触发KeyDown";
t = DateTime.Now;
}
}
楼主你这种态度问问题还是别来问了