如何取到mouse 按下 到某物件的name,CLASS或其它屬性 |
尚未結案
|
tennis
一般會員 發表:1 回覆:1 積分:0 註冊:2009-04-07 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
這...有點難度, 之前有前輩有發過一篇如何runtime 點選元件, 不妨參考看看
http://delphi.ktop.com.tw/board.php?cid=31&fid=79&tid=31513 |
tennis
一般會員 發表:1 回覆:1 積分:0 註冊:2009-04-07 發送簡訊給我 |
|
heart75047
一般會員 發表:9 回覆:13 積分:19 註冊:2010-05-20 發送簡訊給我 |
一定要點擊嗎?
以下是直接偵測滑鼠底下的 座標 handle 拉一個Timer 事件裡面寫 procedure TForm1.Timer1Timer(Sender: TObject); function MYGetClassName(Handle: THandle): String; var Buffer: array[0..MAX_PATH] of Char; begin GetClassName(Handle, Buffer, MAX_PATH); Result := String(Buffer); end; var p:tpoint; c:array[0..254]of char; s:array[0..254] of char; begin getcursorpos(p); //抓HWND caption:=inttostr(windowfrompoint(P)); //抓class name 按鈕會顯示TButton 視窗會顯示TForm getclassname(strtoint(caption),c,255); //抓標題 按鈕會顯示按紐文字 視窗會顯示標題 SendMessage(windowfrompoint(P), WM_GetText, 255, integer(@s[0])); edit2.Text:=s; edit1.Text:=c; Edit3.Text:=MYGetClassName(strtoint(caption)); end; |
supermay
一般會員 發表:0 回覆:0 積分:0 註冊:2023-12-07 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |