怎样让某个窗口在最前面并且有焦点?

先设置启动对象为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
展开
 我来答
miniappqy6r7OFYofB9b
2011-06-20 · TA获得超过161个赞
知道答主
回答量:151
采纳率:0%
帮助的人:88.9万
展开全部
给系统传递窗口消息。时钟周期锁定循环给这个窗口发送激活消息。代码这个是系统函数,我英语不好。我得给你找找。
发送激活消息和窗口总在最前直接调用系统基本函数可以实现
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式