当前位置:编程学习 > VB >>

vb6 嵌套网页弹出模态页时,如何控制不影响其他FORM窗口 ?

vb6 用WebBrowser嵌套网页,当点击网页链接,弹出的是模态页面时,整个工程都被锁定,请问有没有办法令其他FORM窗口不受影响 ? --------------------编程问答-------------------- 点击链接怎么会弹出模态页面呢?不是调用外部浏览器打开吗 --------------------编程问答-------------------- 不是链接,是OPEN --------------------编程问答-------------------- 点击网页open?你说的模态页面是什么啊?如果是div虚拟出来的那边本身还是网页啊 --------------------编程问答-------------------- 模态窗 --------------------编程问答--------------------
引用 4 楼 ymxojcm 的回复:
模态窗
费解,你真惜墨如金。 --------------------编程问答-------------------- 呵呵,就是WebBrowser.Navigate 一个网址,当操作这个网页中的某个按钮,点出网页模态窗的时候,整个VB工程都锁定了,我希望是不要锁定整个工程,即VB其他FORM窗口同样可以操作,我知道VB是单线程,这个问题可能不太好解决,所以请高手帮助,没给您讲明白,深感抱歉。 --------------------编程问答-------------------- 你还好截个图啊?用window.open打开的窗口是模态的? --------------------编程问答-------------------- SORRY,不是OPEN,是window.showModalDialog模态对话框!单显示出网页模态对话框后,其他FORM窗体就都点不动了。 --------------------编程问答-------------------- 那没办法 要解决只有在网页里面解决 --------------------编程问答--------------------
引用 9 楼 sysdzw 的回复:
那没办法 要解决只有在网页里面解决


:( --------------------编程问答-------------------- 要么实现INewWindowManager接口,在EvaluateNewWindow中禁止这类对话框。
或者试试IDocHostUIHandler的EnableModeless --------------------编程问答--------------------
引用 11 楼 hpygzhx520 的回复:
要么实现INewWindowManager接口,在EvaluateNewWindow中禁止这类对话框。
或者试试IDocHostUIHandler的EnableModeless


由于业务需要,还不能禁止这类对话框,只是希望弹出这类对话框,但不影响其他VB的FORM窗体。 --------------------编程问答--------------------
引用 12 楼 ymxojcm 的回复:
引用 11 楼 hpygzhx520 的回复:
要么实现INewWindowManager接口,在EvaluateNewWindow中禁止这类对话框。
或者试试IDocHostUIHandler的EnableModeless


由于业务需要,还不能禁止这类对话框,只是希望弹出这类对话框,但不影响其他VB的FORM窗体。
让网页那边修改下都改用window.open --------------------编程问答--------------------
引用 13 楼 sysdzw 的回复:
引用 12 楼 ymxojcm 的回复:

引用 11 楼 hpygzhx520 的回复:
要么实现INewWindowManager接口,在EvaluateNewWindow中禁止这类对话框。
或者试试IDocHostUIHandler的EnableModeless


由于业务需要,还不能禁止这类对话框,只是希望弹出这类对话框,但不影响其他VB的FORM窗体。
让网页那边修改下……


如果能改的话,我这边就不用这么愁了! --------------------编程问答--------------------
引用 14 楼 ymxojcm 的回复:
引用 13 楼 sysdzw 的回复:
引用 12 楼 ymxojcm 的回复:

引用 11 楼 hpygzhx520 的回复:
要么实现INewWindowManager接口,在EvaluateNewWindow中禁止这类对话框。
或者试试IDocHostUIHandler的EnableModeless


由于业务需要,还不能禁止这类对话框,只是希望弹出这类对话框,但不影响……
另外一个方法就是将打开网页的webbrowser单独放到一个窗体中,然后用非模态调用,直接formxx.show就行了 --------------------编程问答--------------------
引用 15 楼 sysdzw 的回复:
引用 14 楼 ymxojcm 的回复:

引用 13 楼 sysdzw 的回复:
引用 12 楼 ymxojcm 的回复:

引用 11 楼 hpygzhx520 的回复:
要么实现INewWindowManager接口,在EvaluateNewWindow中禁止这类对话框。
或者试试IDocHostUIHandler的EnableModeless


由于业务需要,还不能禁……


你说的非模态调用,指调用什么?网页对话框是模态调用的,这个调用方法咱是改不了的,一旦这个模态对话框弹出,整个VB工程都处于锁定状态,即使嵌套在某个窗体下也是行不通的。 --------------------编程问答--------------------
引用 16 楼 ymxojcm 的回复:
引用 15 楼 sysdzw 的回复:
引用 14 楼 ymxojcm 的回复:

引用 13 楼 sysdzw 的回复:
引用 12 楼 ymxojcm 的回复:

引用 11 楼 hpygzhx520 的回复:
要么实现INewWindowManager接口,在EvaluateNewWindow中禁止这类对话框。
或者试试IDocHostUIHandler的EnableMod……
不是吧,那你放到另外的工程中吧,然后进程间通讯,尝试下 --------------------编程问答--------------------
引用 17 楼 sysdzw 的回复:
引用 16 楼 ymxojcm 的回复:

引用 15 楼 sysdzw 的回复:
引用 14 楼 ymxojcm 的回复:

引用 13 楼 sysdzw 的回复:
引用 12 楼 ymxojcm 的回复:

引用 11 楼 hpygzhx520 的回复:
要么实现INewWindowManager接口,在EvaluateNewWindow中禁止这类对话框。
或者试试IDoc……

另一个工程,表现形式上就不是一个整体了,失去了结合的意义,业务需求不允许这么做。 --------------------编程问答--------------------
引用 18 楼 ymxojcm 的回复:
引用 17 楼 sysdzw 的回复:
引用 16 楼 ymxojcm 的回复:

引用 15 楼 sysdzw 的回复:
引用 14 楼 ymxojcm 的回复:

引用 13 楼 sysdzw 的回复:
引用 12 楼 ymxojcm 的回复:

引用 11 楼 hpygzhx520 的回复:
要么实现INewWindowManager接口,在EvaluateNewWin……
好像直接改webbrowser里面的js脚本代码是可以的,但是可能会很复杂,就是把用showModalDialog的都改成open方式的 --------------------编程问答--------------------
引用 19 楼 sysdzw 的回复:
引用 18 楼 ymxojcm 的回复:

引用 17 楼 sysdzw 的回复:
引用 16 楼 ymxojcm 的回复:

引用 15 楼 sysdzw 的回复:
引用 14 楼 ymxojcm 的回复:

引用 13 楼 sysdzw 的回复:
引用 12 楼 ymxojcm 的回复:

引用 11 楼 hpygzhx520 的回复:
要么实现INewWindowMa……

改不了里面的JS代码,因为嵌套的网页地址是操作客户来指定的,客户可以随意更改嵌套的地址。 --------------------编程问答-------------------- --------------------编程问答--------------------
补充:VB ,  网络编程
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,