如何取得滑鼠座標? |
尚未結案
|
rik
一般會員 發表:40 回覆:81 積分:24 註冊:2004-09-24 發送簡訊給我 |
|
justdo
高階會員 發表:2 回覆:359 積分:222 註冊:2004-08-17 發送簡訊給我 |
|
rik
一般會員 發表:40 回覆:81 積分:24 註冊:2004-09-24 發送簡訊給我 |
引言: 在MouseMoving的事件中,可以獲得滑鼠的座標 在Form的MouseMoving事件中獲得的座標是根設計階段的座標一樣的抱歉我還是不懂><" 1.MouseMoving 在哪裡@@? (剛剛找一些元件 都沒看到MouseMoving 這個even @@" 也沒在Form的even 中找到@@" ) 2.可以舉個舉得座標 範例嗎? 3.MouseMoving是只要滑鼠移動就會觸發嗎@@? 會不會很佔資源@@?
------
時與不時的撿起身旁的拼圖碎片 不懂的部分 半解的部分 就像一塊拼圖 留於腦中 等待拼出完美解答的一天 這就是我的思路 我的創作方法 而我也接受 這作法所帶來的"代價" - 時間 |
allenchan
資深會員 發表:10 回覆:306 積分:283 註冊:2004-01-06 發送簡訊給我 |
Form 就有 OnMouseMove Event,點兩下填入程式碼:
/* 以下的寫法取得對應 Form 的座標 */ void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { Caption = IntToStr(X) " : " IntToStr(Y); } /* 以下的寫法取得對應整個螢幕的座標 */ void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { TPoint P; GetCursorPos(&P); Caption = IntToStr(P.x) " : " IntToStr(P.y); }發表人 - allenchan 於 2004/12/09 23:42:04 |
rik
一般會員 發表:40 回覆:81 積分:24 註冊:2004-09-24 發送簡訊給我 |
引言: Form 就有 OnMouseMove Event,點兩下填入程式碼:啊-口- 我忘了有On開頭= =' 難怪找不到~"~ 測試中...void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { Caption = IntToStr(X) " : " IntToStr(Y); }
------
時與不時的撿起身旁的拼圖碎片 不懂的部分 半解的部分 就像一塊拼圖 留於腦中 等待拼出完美解答的一天 這就是我的思路 我的創作方法 而我也接受 這作法所帶來的"代價" - 時間 |
rik
一般會員 發表:40 回覆:81 積分:24 註冊:2004-09-24 發送簡訊給我 |
引言: Form 就有 OnMouseMove Event,點兩下填入程式碼:這兩個剛剛都試過了 成功>W< 但是舊的問題剛走 新問題又來了-口- 就是.... 在Form中如果有放一些元件 如Image等 感覺會遮住滑鼠和Form表面一樣 OnMouseMove Event不會被觸發0.0 有解決方法嗎@@? [希望是 只要在Form的OnMouseMove Event寫就好了@@"] 剛剛在用時 有試過讓Image也有OnMouseMove此事件 且觸發後執行內容和 Form一樣 但是結果是 1.Form的OnMouseMove Event不會被觸發 2. 顯示的座標是相對於該圖片-口-"" (也就是圖的OnMouseMove有觸發 只是不是我要的0.0)/* 以下的寫法取得對應 Form 的座標 */ void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { Caption = IntToStr(X) " : " IntToStr(Y); } /* 以下的寫法取得對應整個螢幕的座標 */ void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { TPoint P; GetCursorPos(&P); Caption = IntToStr(P.x) " : " IntToStr(P.y); 這算多學到的知識>W< }發表人 - allenchan 於 2004/12/09 23:42:04
------
時與不時的撿起身旁的拼圖碎片 不懂的部分 半解的部分 就像一塊拼圖 留於腦中 等待拼出完美解答的一天 這就是我的思路 我的創作方法 而我也接受 這作法所帶來的"代價" - 時間 |
allenchan
資深會員 發表:10 回覆:306 積分:283 註冊:2004-01-06 發送簡訊給我 |
改成下面這樣,然後把 Form 上面元件的 OnMouseMove 都選到 FormMouseMove。
void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { TPoint P; GetCursorPos(&P); P = ScreenToClient(P); Caption = IntToStr(P.x) " : " IntToStr(P.y); }發表人 - allenchan 於 2004/12/10 00:37:56 |
rik
一般會員 發表:40 回覆:81 積分:24 註冊:2004-09-24 發送簡訊給我 |
引言: 改成下面這樣,然後把 Form 上面元件的 OnMouseMove 都選到 FormMouseMove。恩恩 OK了 謝謝^^void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { TPoint P; GetCursorPos(&P); P = ScreenToClient(P); Caption = IntToStr(P.x) " : " IntToStr(P.y); }發表人 - allenchan 於 2004/12/10 00:37:56
------
時與不時的撿起身旁的拼圖碎片 不懂的部分 半解的部分 就像一塊拼圖 留於腦中 等待拼出完美解答的一天 這就是我的思路 我的創作方法 而我也接受 這作法所帶來的"代價" - 時間 |
barryHsu
一般會員 發表:55 回覆:49 積分:20 註冊:2005-01-25 發送簡訊給我 |
|
rogerchen927
一般會員 發表:0 回覆:2 積分:5 註冊:2010-02-03 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |