以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]判断活动窗口 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=115004) |
||||
-- 作者:jyh7081 -- 发布时间:2018/2/27 16:16:00 -- [求助]判断活动窗口 自定义函数里有段代码,想根据当前不同的焦点窗口分别写代码,但是有一段没起作用,能不能这样写?
Dim frm1 As WinForm.Form = Forms.ActiveForm |
||||
-- 作者:有点甜 -- 发布时间:2018/2/27 16:21:00 -- 代码是没问题。
Forms.ActiveForm 得到的窗口,是窗口管理那里你添加的窗口,焦点窗口必须是鼠标点击进入以后才算是焦点窗口。
具体问题做个例子说明。 |
||||
-- 作者:jyh7081 -- 发布时间:2018/2/27 16:30:00 -- 是焦点窗口,是几个并列窗口中的焦点窗口。 那就不是Forms.ActiveForm。 有没有判断焦点窗口的? |
||||
-- 作者:有点甜 -- 发布时间:2018/2/27 16:55:00 -- 做个计划任务,执行下面的代码,看命令窗口显示什么
Dim frm = Windows.Forms.Form.ActiveForm |
||||
-- 作者:jyh7081 -- 发布时间:2018/2/27 19:38:00 -- 甜老师,我做了个例子,里面有两个浏览器窗口,结构相同。但一个是独立窗口,一个是并列窗口。 点击导航栏上面的按钮(在窗口中打开独立窗口)打不开网页里面的链接;点击下面的按钮(直接打开并列窗口)没有问题。 是不是自定义函数NewWindow的问题? 谢谢!
|
||||
-- 作者:有点蓝 -- 发布时间:2018/2/27 20:35:00 -- 把引用的外部文件打包发上来 |
||||
-- 作者:jyh7081 -- 发布时间:2018/2/27 21:01:00 -- 不好挑,一起打包了。
[此贴子已经被作者于2018/2/27 21:15:07编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2018/2/27 21:38:00 -- NewWindow改为判断“窗口中打开浏览器” Dim frm1 As WinForm.Form = Forms.ActiveForm If frm1 IsNot Nothing Then If frm1.Name = "窗口中打开浏览器" Then ......独立窗口 ElseIf frm1.Name = "网页浏览器" Then ...... |
||||
-- 作者:jyh7081 -- 发布时间:2018/2/27 22:38:00 -- 谢谢蓝老师! 可以了,只是打开网页较多时(比如两种方式同时打开10个左右的网页),会提示内存不足,见图:
|
||||
-- 作者:有点蓝 -- 发布时间:2018/2/27 22:49:00 -- 微软的这个浏览器控件很弱智的,不要想着可以做成真正的浏览器来用 |