怎样让某个窗口在最前面并且有焦点?
先设置启动对象为SubMain模块代码:OptionExplicitSubMain()LoadForm1EndSub窗体代码:OptionExplicit'不要在IDE中...
先设置启动对象为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 展开
模块代码:
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 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询