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

取得控制權

缺席
shinhrn
中階會員


發表:54
回覆:165
積分:83
註冊:2002-06-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-11-13 10:48:49 IP:211.77.xxx.xxx 未訂閱
請問要如何使程式成為windows的主Active Window(當Active Window已移至別的Ap時),我用以下程式 Hwnd:=Application.Handle; SetActiveWindow(Hwnd); SetForegroundWindow(Hwnd); 可是它只會在windows底下的控制列,一閃一閃的,並不會把控制輸入,交回我的程式ㄝ!!!
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-11-13 11:49:44 IP:211.74.xxx.xxx 未訂閱
這一行 SetForegroundWindow(Hwnd); 改為這樣 BringWindowToTop(Hwnd); 不知道是不是你要的??
引言: 請問要如何使程式成為windows的主Active Window(當Active Window已移至別的Ap時),我用以下程式 Hwnd:=Application.Handle; SetActiveWindow(Hwnd); SetForegroundWindow(Hwnd); 可是它只會在windows底下的控制列,一閃一閃的,並不會把控制輸入,交回我的程式ㄝ!!!
shinhrn
中階會員


發表:54
回覆:165
積分:83
註冊:2002-06-05

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-11-13 17:38:23 IP:211.77.xxx.xxx 未訂閱
BringWindowToTop(Hwnd); 我也試過了,不行ㄝ!!! 以下是我最後的方法, aphwnd:=Application.Handle; if IsIconic(aphwnd) then ShowWindow(aphwnd, SW_RESTORE) else // Bring it to the front begin frmhwnd := mainfrm.Handle; if GetActiveWindow()<>frmhwnd then begin // SetActiveWindow(aphwnd); // SetForegroundWindow(aphwnd); // BringWindowToTop(aphwnd); ShowWindow(aphwnd, SW_HIDE); ShowWindow(aphwnd, SW_SHOWMINIMIZED); ShowWindow(aphwnd, SW_RESTORE); end; end; 可是要min後再RESTORE似乎怪怪的
ko
資深會員


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-11-20 13:56:37 IP:61.221.xxx.xxx 未訂閱
那可能是你將原來的ap縮小或取得控制權的ap有top在最前視窗 那所以除了前述的程式之外再加一個模擬鍵試一試ㄅ SendKeysToHandle(hw,SK_Enter);
------
======================
昏睡~
不昏睡~
不由昏睡~
shinhrn
中階會員


發表:54
回覆:165
積分:83
註冊:2002-06-05

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-11-21 08:50:05 IP:211.77.xxx.xxx 未訂閱
引言: 那可能是你將原來的ap縮小或取得控制權的ap有top在最前視窗 那所以除了前述的程式之外再加一個模擬鍵試一試ㄅ SendKeysToHandle(hw,SK_Enter);
你有外加模組嗎? 我試的結果沒有 SendKeysToHandle 這一個函式ㄝ!!!!!!!!!
系統時間:2024-03-29 14:28:38
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!