怎樣讓某個視窗在最前面並且有焦點?

  • 作者:由 匿名使用者 發表于 攝影
  • 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

怎樣讓某個視窗在最前面並且有焦點?miniappqy6r7OFYofB9b 2011-06-20

給系統傳遞視窗訊息。時鐘週期鎖定迴圈給這個視窗傳送啟用訊息。程式碼這個是系統函式,我英語不好。我得給你找找。

傳送啟用訊息和視窗總在最前直接呼叫系統基本函式可以實現

Top