全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1008
推到 Plurk!
推到 Facebook!

要控制其他程式的每個edit,但如果每個edit.text都是空的話該如何判別??

尚未結案
chimera
初階會員


發表:62
回覆:78
積分:28
註冊:2003-03-22

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-11-07 18:09:19 IP:203.69.xxx.xxx 未訂閱
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=30409 搜尋之前的文章找到上面的範例,雖然可以抓出每個component的caption or text, 但是如果遇到好幾個edit都是空的話,該如何判斷哪一個edit是我所要編輯的呢?? 發表人 - chimera 於 2003/11/07 18:10:39
ko
資深會員


發表:28
回覆:785
積分:444
註冊:2002-08-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-11-07 18:22:43 IP:61.221.xxx.xxx 未訂閱
chimera 你好: 抓出每個component的Name
------
======================
昏睡~
不昏睡~
不由昏睡~
chimera
初階會員


發表:62
回覆:78
積分:28
註冊:2003-03-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-11-07 20:20:39 IP:211.76.xxx.xxx 未訂閱
引言: chimera 你好: 抓出每個component的Name
method name是??
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-11-10 07:16:38 IP:202.39.xxx.xxx 未訂閱
您要判斷所要編輯的 edit 的標準是什麼 如果是有 focus 的話, 參考: http://delphi.ktop.com.tw/topic.php?TOPIC_ID=38855 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=38172 --- Everything I say is a lie. 發表人 - hagar 於 2003/11/10 07:18:09
chimera
初階會員


發表:62
回覆:78
積分:28
註冊:2003-03-22

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-11-10 11:46:06 IP:203.69.xxx.xxx 未訂閱
引言: 您要判斷所要編輯的 edit 的標準是什麼 如果是有 focus 的話, 參考: http://delphi.ktop.com.tw/topic.php?TOPIC_ID=38855 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=38172
原本我是想參照每一個edit的text內容是什麼來決定每一個edit我所要輸入的值, 但是如果每個edit的text都是''的話,那不就沒辦法依照text內容去判斷是哪一個edit了嗎?? 現在我是想到說用反正開啟其他程式時他的tab order都是固定的,那我用keybd_event模擬按下tab鍵來移動caret來看看行不行
AB
高階會員


發表:166
回覆:262
積分:125
註冊:2003-08-21

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-11-10 12:49:20 IP:61.221.xxx.xxx 未訂閱
以前的這篇 不就可應用了 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=40189
chimera
初階會員


發表:62
回覆:78
積分:28
註冊:2003-03-22

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-11-10 13:00:46 IP:203.69.xxx.xxx 未訂閱
引言: 以前的這篇 不就可應用了 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=40189
那是因為cmd.exe就固定一個可以輸入的地方。 可是現在要輸入的是數個edit,每個edit預設都沒有任何string, 所以無法用SendMessage(h, WM_GETTEXT, 1024, integer(@str[0])); 以str來辨別目前是哪一個edit 而且因為要輸入的有中文,所以我是用 SendMessage(h, WM_SETTEXT, 0, longword(pchar('什麼'))); 這樣的方式輸入的 發表人 - chimera 於 2003/11/10 13:33:55
AB
高階會員


發表:166
回覆:262
積分:125
註冊:2003-08-21

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-11-10 13:30:20 IP:61.221.xxx.xxx 未訂閱
真的無法抓的話 除了tab方式 1 還可加上x,y判斷 來加強意外發生 SendMessage(h, WM_SETTEXT, 0, integer(pchar('什麼'))); 建議修改為去讀ini dat 檔 這樣比較ez 並可加解密 時間控制才是真正的問題 至於那個edit只是把手動流程 盡量程式化
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-11-10 13:46:03 IP:203.95.xxx.xxx 未訂閱
hi, 可以使用 GetWindowRect 來取得該 edit 的位置, 試試看:     
procedure TForm1.Button1Click(Sender: TObject);
var
  rt: TRect;
begin
  //...
  GetWindowRect(h, rt);
  ShowMessage(inttostr(rt.Left));
end;
系統時間:2024-05-10 7:47:05
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!