VC语言

本类阅读TOP10

·VC++ 学习笔记(二)
·用Visual C++打造IE浏览器(1)
·每个开发人员现在应该下载的十种必备工具
·教你用VC6做QQ对对碰外挂程序
·Netmsg 局域网聊天程序
·Windows消息大全
·VC++下使用ADO编写数据库程序
·VC++学习笔记(四)
·非法探取密码的原理及其防范
·怎样在VC++中访问、修改注册表

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
WebBrowser隐藏后自动销毁的BUG以及解决办法

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

 

主  题:如何隐藏和显示控件 -- WebBrowser?
所属论坛:Visual C++

代码如下:
m_pWB=new CWebBrowser2;
m_nWBID = 7000;        
m_pWB[i]->Create(NULL,WS_CHILD ¦ WS_VISIBLE,CRect (0,0,500,500),(CWnd *)(&m_tab1),m_nWBID,FALSE);    
m_pWB->Navigate("http://www.sina.com.cn/",NULL,NULL,NULL,NULL);

要显示和隐藏m_pWB,采用
m_pWB->SetVisible(false);
m_pWB->SetVisible(true);

m_pWB->ShowWindow(WS_HIDE)
m_pWB->ShowWindow(WS_SHOW)

都不能实现切换
 回复人:111222() (2001-6-7 14:15:00) 得1000000分

WebBrowser控件有BUG
ShowWindow(WS_HIDE);之后控件就被销毁了。
再也显示不出来了:(

原因:

在MFC中,WebBrowser控件动态创建,没有设置WS_VISIBLE 属性 或者 调用了ShowWindow(SW_HIDE);
就会调用IOleControl::DoVerb() ,使WebBrowser控件的实例被销毁。


解决办法:


用SDK的ShowWindow函数。
//隐藏IE控件
::ShowWindow( m_pWB.GetSafeHwnd(), SW_HIDE );

//显示IE控件
::ShowWindow( m_pWB.GetSafeHwnd(), SW_SHOW );





相关文章

相关软件