怎樣讓某個視窗在最前面並且有焦點?
- 2022-05-16
先設定啟動物件為Sub Main
模組程式碼:
Option Explicit
Sub Main()
Load Form1
End Sub
窗體程式碼:
Option Explicit
‘不要在IDE中執行,要生成exe後執行。
’首先開啟一個最大化的瀏覽器,然後將瀏覽器視窗最小化,
‘執行生成的exe,立即點出瀏覽器視窗,稍等一下就會出現notepad,
’但僅僅是顯示在工作列中,沒有顯示在瀏覽器視窗的前面,需要手動點選notepad。
‘我想讓notepad顯示在瀏覽器的前面,並且是有焦點的活動狀態。
’用SetForegroundWindow SetActiveWindow SetFocus
‘SwitchToThisWindow等都只能讓notepad在工作列裡用橙色顯示,
’但沒顯示在瀏覽器前面。用SetWindowPos設為TOPMOST之後用
‘SetForegroundWindow只能讓notepad顯示在瀏覽器前,但焦點還
’在瀏覽器視窗上,notepad標題欄還是灰色的。請指教。
‘不想用模擬滑鼠鍵盤點選的方式。
Private Declare Sub Sleep Lib “kernel32” (ByVal dwMilliseconds As Long)
Private Sub Form_Load()
Timer1。Interval = 5000
Timer1。Enabled = True
End Sub
Private Sub Timer1_Timer()
Timer1。Enabled = False
Shell “notepad。exe”, vbNormalFocus
Sleep 3000
Unload Me
End Sub
給系統傳遞視窗訊息。時鐘週期鎖定迴圈給這個視窗傳送啟用訊息。程式碼這個是系統函式,我英語不好。我得給你找找。
傳送啟用訊息和視窗總在最前直接呼叫系統基本函式可以實現
上一篇:攝影專業都考什麼內容?
下一篇:jpg有嚴重色差怎麼辦