線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1347
推到 Plurk!
推到 Facebook!

請問各位大大滑鼠的問題

尚未結案
minlee1121
一般會員


發表:1
回覆:4
積分:1
註冊:2002-09-01

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-09-01 23:22:58 IP:211.74.xxx.xxx 未訂閱
請教各位大大, 原本滑鼠在Win98 下只支援三個按鍵(右鍵,左鍵,和中間滾輪鍵),而win98 後 的版本(Win2000,WinMe,WinXP) ,又多支援兩個擴充4,5 鍵 如果要將這第四和第五鍵加入 delphi 語法中,請問要如何加入? (在最新的Windows API SDK 中有提到這兩個擴充鍵,一個為MK_XButton1 一個為MK_XButton2 這兩個參數,但不知如何加入delphi,變成delphi 語法) ps. 小弟為初學者,不懂的地方請各位大大多多指教. Thanks.
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-09-02 18:12:54 IP:61.221.xxx.xxx 未訂閱
引言: 請教各位大大, 原本滑鼠在Win98 下只支援三個按鍵(右鍵,左鍵,和中間滾輪鍵),而win98 後 的版本(Win2000,WinMe,WinXP) ,又多支援兩個擴充4,5 鍵 如果要將這第四和第五鍵加入 delphi 語法中,請問要如何加入? (在最新的Windows API SDK 中有提到這兩個擴充鍵,一個為MK_XButton1 一個為MK_XButton2 這兩個參數,但不知如何加入delphi,變成delphi 語法) ps. 小弟為初學者,不懂的地方請各位大大多多指教. Thanks.
那個參數應該只是個數值型態如Word,只要能查出MK_XButton1,MK_XButton2的數值,就可以用數字直接填給API函式了! ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
minlee1121
一般會員


發表:1
回覆:4
積分:1
註冊:2002-09-01

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-09-02 18:24:57 IP:61.59.xxx.xxx 未訂閱
感謝大大, 以下是我從SDK 中查到的數值,但是就不知如何在delphi 動作 因為我delphi 是初學,不會使用-_-,請版大多多指點,謝謝. Remarks See the KeyDown event for possible values for Shift. The following table lists the possible values for Button: Value Meaning 1 The left button was pressed. 2 The right button was pressed. 4 The middle button was pressed. 8 The X button 1 was pressed. 10 The X button 2 was pressed.
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-09-02 20:27:53 IP:61.219.xxx.xxx 未訂閱
引言: 以下是我從SDK 中查到的數值,但是就不知如何在delphi 動作 因為我delphi 是初學,不會使用-_-,請版大多多指點,謝謝.
請問您要控制滑鼠按鍵作何事情? 可否寫出需求才好回答! ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
minlee1121
一般會員


發表:1
回覆:4
積分:1
註冊:2002-09-01

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-09-02 20:35:32 IP:211.74.xxx.xxx 未訂閱
^^.. 我想要做一個滑鼠測試程式呀,要測按鍵(五個按鍵的),滾輪,還有畫線..等 :)
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-09-02 21:57:07 IP:61.219.xxx.xxx 未訂閱
引言: 我想要做一個滑鼠測試程式呀,要測按鍵(五個按鍵的),滾輪,還有畫線..等
您試試看以下的程式可不可用 procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if integer(Button)=8 then showmessage('The X button 1 was pressed.'); if integer(Button)=10 then showmessage('The X button 2 was pressed'); end; ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
minlee1121
一般會員


發表:1
回覆:4
積分:1
註冊:2002-09-01

發送簡訊給我
#7 引用回覆 回覆 發表時間:2002-09-02 23:26:44 IP:211.74.xxx.xxx 未訂閱
報告站長, 我有使用您的給我的參考方式去試,結果4,5 鍵沒反應 但是您給我的方式我去測左,中,右,鍵(我用數值代進去) 結果有問題 跟SDK 上寫的數質不一樣 之後我用您給我的方式去測按鍵數字,如下: procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Label1.Caption := IntToStr(Integer(Button)); end; 結果測出結果 左,中,右 鍵數值各為 1,2,0(跟SDK 給的數值不一樣,好奇怪) 我用測出各鍵數值結果寫入程式如下 If Integer(button) = 0 Then .....等等.. 結果真的左,中,右鍵可以動作 但是問題來了,我按4,5 鍵始終沒有反應 -_- 不過真是謝謝站長,我又學到一招..另外,請大大能繼續指教 感激不盡 ^^
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#8 引用回覆 回覆 發表時間:2002-09-03 08:42:07 IP:61.219.xxx.xxx 未訂閱
會不會Delphi內部的MouseDown的事件只會接受這三個標準鍵? 若是就麻煩了?我手上無五鍵的Mouse,您先測下面的程式, 看看按下第4/5鍵後有無出現數值? procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin ShowMessage(inttostr(integer(Button))); end; ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
minlee1121
一般會員


發表:1
回覆:4
積分:1
註冊:2002-09-01

發送簡訊給我
#9 引用回覆 回覆 發表時間:2002-09-03 10:14:19 IP:61.59.xxx.xxx 未訂閱
大大, 測試結果,被您料中了 4,5 鍵沒有反應,好奇怪,而測出來的數值 我之前有報告過,是0(右),1(左),2(中) 跟SDK 寫的數值不一樣
系統時間:2024-04-20 19:36:00
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!