怎样防止一个onkeydown事件被多次触发

wzyll 2003-12-28 11:23:09
大家好:
我希望当按下回车键时触发一个edit控件的onkeydown事件,此事件要实现对串口取数并判断取数是否稳定,所以时间要长一点。操作人员经常一次性按多下回车键至使该事件被多次触发。是否有一种方法,即使操作人员按了多次回车键该事件只触发一次。我曾试图用全局变量的方法来控制此事件的发生,但不成功。
谢谢!
王振亚
2003.12.28

...全文
472 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ly_liuyang 2003-12-29
  • 打赏
  • 举报
回复
Edit1KeyDown

if edit1.tag>0 then Exit;
edit1.tag:=1;
Do your processing here
edit1.tag:=0;
end;
zswangII 2003-12-28
  • 打赏
  • 举报
回复
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
Timer1.Enabled := True; //模拟长时间处理开始
Edit1.Enabled := False;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled := False; //模拟长时间处理结束
Edit1.Enabled := True;
Edit1.SetFocus;
end;

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧