請問如何抓到另支程式的ComboBox |
尚未結案
|
gavinj123
初階會員 發表:88 回覆:48 積分:27 註冊:2002-10-15 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
gavinj123
初階會員 發表:88 回覆:48 積分:27 註冊:2002-10-15 發送簡訊給我 |
引言: gavinj123 你好: 1. 你可以運用 Win API , "EnumWindows" 與 "EnumChildWindows" 找出該 Combobox 的 Handle.(建議搜尋一下相關文章). 2. 對該 Window Handle 送 CB_SETCURSEL Message, 如: SendMessage(ComboBox1.Handle,CB_SETCURSEL,1,0); // 選定第二個 ItemMickey大大,謝謝你, SendMessage(ComboBox1.Handle,CB_SETCURSEL,1,0); // 選定第二個 Item 解決了我第二個問題, 但是我第一個問題是,我打到了Combobox 的 Handle了,但我怎麼抓到他裡面Item的所有選項呢?因為我要先知道它有那些選項,才能知要我要選那一個。 |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
參考看看:
procedure TForm1.Button1Click(Sender: TObject); var i , iCount, iLen:integer; iStr : array of char; begin iCount := SendMessage(ComboBox1.Handle,CB_GETCOUNT,0,0); for i := 0 to iCount - 1 do begin iLen := SendMessage(ComboBox1.Handle,CB_GETLBTEXTLEN,i,0); SetLength(iStr,iLen); SendMessage(ComboBox1.Handle,CB_GETLBTEXT,i,Integer(iStr)); Memo1.Lines.Add(String(iStr)); end; end;發表人 - Mickey 於 2004/09/02 12:54:05 |
gavinj123
初階會員 發表:88 回覆:48 積分:27 註冊:2002-10-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |