社区
HTML/XML
帖子详情
老问题了,CHtmlView如何去除边框,通过VC6治本的方法解决
DrSmart
2011-09-10 07:09:31
老问题了,CHtmlView如何去除边框,通过VC6治本的方法解决,从HTML上解决不够通用,能有例子更好。搜索引擎都试了,没搞定,嗨
...全文
224
10
打赏
收藏
老问题了,CHtmlView如何去除边框,通过VC6治本的方法解决
老问题了,CHtmlView如何去除边框,通过VC6治本的方法解决,从HTML上解决不够通用,能有例子更好。搜索引擎都试了,没搞定,嗨
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
supercllc
2011-10-08
打赏
举报
回复
http://blog.csdn.net/cometnet/article/details/6284994
这文章里有个写好的头文件,直接用,好用
yjgx007
2011-09-16
打赏
举报
回复
不要用CHTMLView, 直接创建IWebBrowser2控件(可用AxWindow宿主创建方法 - CreateControl), 然后,再用#3楼办法.
DrSmart
2011-09-16
打赏
举报
回复
还有人知道吗?
DrSmart
2011-09-15
打赏
举报
回复
[Quote=引用 6 楼 crybird 的回复:]
使用连接点监控IE控件的事件
[/Quote]
有个工程例子吗,看你说的挺抽象的
skyxie
2011-09-13
打赏
举报
回复
边框还是滚动条?
滚动条没有什么好办法,只有通过js设置scroll的style。当然,也可以通过MSHTML的接口进行操作。但本质上是一样的,都是设置style
超级管理员9527
2011-09-13
打赏
举报
回复
使用连接点监控IE控件的事件
超级管理员9527
2011-09-13
打赏
举报
回复
老问题,新解法:关于去掉WebBrowser的边框和滚动条
http://blog.csdn.net/crybird/article/details/6732661
oyljerry
2011-09-13
打赏
举报
回复
干脆直接用Web Kit等其他浏览器内核库吧.
redui
2011-09-13
打赏
举报
回复
这个问题还真的很难缠。
MSDN解释得很清楚了,要去除浏览器边框,你的宿主应用应该实现IDocHostUIHandler接口,并在GetHostInfo方法里对第一个参数设置标志位,
*pdwFlags = DOCHOSTUIFLAG_NO3DBORDER | DOCHOSTUIFLAG_NO3DOUTERBORDER;
当然还可以加上其它你需要的标志,这个标志就是去除边框的。
上面这个很好理解,但最纠结的问题就是,你实现的IDocHostUIHandler接口怎么被浏览器控件调用到。
1、如果你用的是ATL的AxWindow创建的浏览器控件,是最简单的方案,直接调用它的 SetExternalUIHandler就搞定了。通常MFC也会用到ATL的这个工具类,至少我在 CDHtmlDialog 中是见到的,CHtmlView 还不知道,VC6 更不知道是不是用到了这个类,所以不敢保证,最好去看看它们的源码。
2、如果没有AxWindow,难度就大了一点。如果你选择自己实现容器接口,难度在于容器接口的很多内容需要学习,但相对来说楼主的问题还算比较容易解决,只需在实现 IOleClientSite 的同时也实现 IDocHostUIHandler 就可以了。
3、如果不选择自己实现容器,而是借用某个非ATL的第三方容器实现,难度就更大了,因为你不能直接在 SITE 上实现 UIHANDLER(直接修改第三方代码也是个办法,但不建议这样做),你可以越级打小报告,直接从IHTMLDocument接口查询 ICustomDoc 接口,然后调用它的 SetUIHandler 方法,实现效果相同。问题在于,浏览器控件是用来导航的,你不可能永远只打开一个HTML页面,只要打开新页面,文档对象就变了,以前的设置全失效(还有内存泄露风险),你得重新获取并调用 ICustomDoc::SetUIHandler,当然你必须捕获 DocumentComplete 事件来干这事,这个烦啊……
4、还有最后一个解决办法,我不敢肯定是否一定生效,而且手续复杂,那就是实现一个纯粹的 IDispatch(所谓纯粹,就是只有Invoke调用,不会被转换成成员函数),用来提供环境参数,每个ActiveX控件都有环境参数,但不同控件的要求不同,你可以从这里提供DocHostFlags参数,不知道浏览器要不要啊,没试过。至于怎么提供环境参数,哎,几句话说不清楚啊,真的手续复杂,还是先上网找找再说吧……
DrSmart
2011-09-10
打赏
举报
回复
补充下是CDialog的对话框,在VC6下
VC6
中使用C
Html
View
在对话框控制中显示
HTML
文件
我们不妨拿C
Html
View
和CList
View
做一个比较,通过比较这两个类,我们会发现一些有趣的差别。首先,MFC中CList
View
有一个对应的CListCtrl类,而C
Html
View
却没有一个C
Html
Ctrl类与之对应;其次,CList
View
的使用依赖于...
VC用C
HTML
VIEW
循环打开一个网页
2. **在 OnInitDialog() 或 OnCreate()
方法
中初始化 C
Html
View
**:在这些
方法
中,调用`Create()`或`CreateControl()`函数来创建并初始化C
Html
View
。例如: ```cpp m_
html
View
.Create(NULL, _T("Shell.Explorer.2...
源码,基于C
Html
View
类编写的vc浏览器带有收藏夹
3. **
VC6
兼容性**:这个项目使用的是Visual C++ 6.0进行编译,这是微软在20世纪末发布的一个开发工具,虽然已经较为古
老
,但它仍然适用于学习基本的MFC编程概念。 4. **操作系统兼容性**:项目声明为在WinXP上编译...
VC 中 对话框使用 C
Html
View
6. **处理
HTML
交互**:`C
Html
View
`可以响应`DWebBrowserEvents2`接口事件,通过重写`BEGIN_DISPATCH_MAP`和`END_DISPATCH_MAP`之间的内容,可以捕获并处理网页中的事件,例如链接点击、页面加载完成等。 7. **...
C
Html
View
ProjV2.zip_C
HTML
view
_CreateControlSite_VC 浏览器_
html
view
- **脚本交互**:利用`C
Html
View
`的`ExecuteScript`
方法
,可以执行JavaScript代码,实现与网页内容的交互。 - **自定义行为**:通过`IWebBrowser2`接口,可以实现如下载管理、书签、历史记录等高级功能。 总的来说...
HTML/XML
3,055
社区成员
8,075
社区内容
发帖
与我相关
我的任务
HTML/XML
VC/MFC HTML/XML
复制链接
扫一扫
分享
社区描述
VC/MFC HTML/XML
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章