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

获取元件

答題得分者是:builder78
KFC
一般會員


發表:43
回覆:73
積分:23
註冊:2003-03-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-04-14 11:35:02 IP:210.77.xxx.xxx 未訂閱
如果知道了某个窗体的handle,怎样可以利用WIN32 API得到所窗体的ToolBar元件?
builder78
初階會員


發表:36
回覆:100
積分:47
註冊:2003-02-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-04-14 14:23:20 IP:211.76.xxx.xxx 未訂閱
可以使用ChildWindowFromPoint這個API~~ 可依據位置抓窗體內元件的Handle void __fastcall TForm1::Button1Click(TObject *Sender) { TPoint p; //點座標以窗體的Client區域為基準,落在所求元件的Client區域內 //所以視情況自行調整點座標 p.x=0; p.y=0; //參數一為窗体的handle HWND htools = ChildWindowFromPoint(Form1->Handle,p); if(htools==ToolBar1->Handle) ShowMessage("抓到ToolsBar的Handle"); } 我只想到這方法~~ 若有更好的方法~ 希望能提出來~ 我也想知道~   ********************************************************* 有系統的知識才是力量
KFC
一般會員


發表:43
回覆:73
積分:23
註冊:2003-03-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-04-14 14:31:44 IP:210.77.xxx.xxx 未訂閱
// if(htools==ToolBar1->Handle) 问题是我不知道ToolBar1这个instance。我写的是DLL,主函数提供了窗体的handle,我想获得这个窗体下的toolbar
builder78
初階會員


發表:36
回覆:100
積分:47
註冊:2003-02-03

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-04-14 16:39:13 IP:211.76.xxx.xxx 未訂閱
if(htools==ToolBar1->Handle)只是做驗證而已 知不知道 ToolsBar1->Handle不重要 重要的是要確定視窗下toolbar的位置ㄅ~ ********************************************************* 有系統的知識才是力量
KFC
一般會員


發表:43
回覆:73
積分:23
註冊:2003-03-27

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-04-14 18:27:29 IP:210.77.xxx.xxx 未訂閱
那toolbar1是什么?是一个instance吗?还是类?我都搞糊涂?
系統時間:2024-05-03 6:46:51
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!