我有时偶尔会用左手设置,今天突然发现下面的程序如果在左手习惯(左右键与正常相反)的情况下会出现下列错误:
procedure TfrmMain.PageControl1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if button=mbright then
begin
mouse_event(MOUSEEVENTF_leftDOWN,0,0,0,0);
application.ProcessMessages ;
mouse_event(MOUSEEVENTF_leftUP,0,0,0,0);
end;
end;
---------------------------------------------------------------------
Project ebuy.exe raised exception class EStackOverflow with message 'Stack overflow'. Process stopped. Use Step or Run to continue.在正常设置下就不会,原因可能是形成的无限制的消息循环。
那么,我如何先判断当前系统的鼠标设置是正常还是左手习惯呢?(左右键与正常相反)
procedure TfrmMain.PageControl1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if button=mbright then
begin
mouse_event(MOUSEEVENTF_leftDOWN,0,0,0,0);
application.ProcessMessages ;
mouse_event(MOUSEEVENTF_leftUP,0,0,0,0);
end;
end;
---------------------------------------------------------------------
Project ebuy.exe raised exception class EStackOverflow with message 'Stack overflow'. Process stopped. Use Step or Run to continue.在正常设置下就不会,原因可能是形成的无限制的消息循环。
那么,我如何先判断当前系统的鼠标设置是正常还是左手习惯呢?(左右键与正常相反)
解决方案 »
- 请问 我用delphi7 用rave5制作报表,我想在打印预览时 设置页码; 如有两页 第一页显示为:第1页,共2页;第二页显示为:第2页,共2页 这种形式 ?请指点!
- 如何实现不存盘编译
- 有没有书对DELPHI中的基本控件做详细说明的,控件的属性、方法、事件等,电子和非电子的都可以
- 高难问题!!!!怎样把用C# DataSet生成的XMl文件读入到datagrid中
- !!!!!!!!怎么实现关闭计算机?????
- 关于在数据库中存取JPG图像的问题
- fastreport一疑问
- 又是怪事,ADOTable1、ADOTable2;设置前一个是主表,后一个是从表,Lock Type设置都为ltBatchOptimistic,运行输入数据后,执行DataModu
- 我的问题大家看看
- 请问大家哪里有signcode.exe下?请告诉我具体的url谢谢了
- 请教一个关于Object Pascal的问题,请多多帮忙!
- 问一个对于大家来说比较简单的问题,对我这个初学者却很难……
//这里要区分用户设置是左手习惯还是右手习惯,或者强行设置为左手,后面换过来
if (GetSystemMetrics(SM_SWAPBUTTON)>0) then
begin
Mouse_Event(MOUSEEVENTF_RIGHTDOWN+MOUSEEVENTF_ABSOLUTE,X,Y,0,0);
Mouse_Event(MOUSEEVENTF_RIGHTUP+MOUSEEVENTF_ABSOLUTE,X,Y,0,0);
end
Else begin
Mouse_Event(MOUSEEVENTF_LEFTDOWN+MOUSEEVENTF_ABSOLUTE,X,Y,0,0);
Mouse_Event(MOUSEEVENTF_LEFTUP+MOUSEEVENTF_ABSOLUTE,X,Y,0,0);
end;