鼠標左鍵長按功能的實現


1、添加[Additional]頁下的[TApplicationEvents]控件

2、申請全局的Integer變量,用來計算延時,如:YsNum: Integer;

3、在ApplicationEvents1的OnMessage事件中,對捕獲的WM_LBUTTONDOWN消息進行處理

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);

begin

  case Msg.message of
    WM_LBUTTONDOWN: begin
                                         YsNum:= GetTickCount;
                                         end;

  end;
end;

4、然后在相應控件的OnMouseUp事件中進行延時處理

……

begin

{$WARNINGS OFF}  //使用GetTickCount函數,編譯時會產生一個WARNINS的提示,在此可將WARNINGS開關關閉
if GetTickCount - YsNum > 500 then    //此處500為延時500ms
begin

    //==========在此處填寫你自己的代碼==========
end;
{$WARNINGS ON}

end;

5、如果控件沒有OnMouseUp事件,可在第3步中的OnMessage事件中對WM_LBUTTONUP消息進行處理即可

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM