关于WebBrowser使用问题
来源:互联网 发布:移动宽带提速软件 编辑:程序博客网 时间:2024/05/29 15:12
由于工作需要,最近一直在看IE编程方面的知识,也查了很多微软官网的资料,非常感谢微软的技术人员的帮助文档;
如果想用好这个组件的话需要对COM组件基础知识有了解,因为IE本分就是COM技术的典型应用。
class CClientBrowser : public IOleContainer,
public IOleClientSite,
public IOleInPlaceSite,
public IOleControlSite,
public IDocHostUIHandler,
public DWebBrowserEvents2;
上面是我用到的类,由于是C++导出接口而且都是纯虚函数所以必须把上面这些类的成员都需要实现;
IWebBrowser2* __web_browser;
IOleObject* __ole_object;
IConnectionPoint* __conn_point;
我用到的类成员,IWebBrowser2->Navigate2来打开网页的;
在开发过程中需求随时都在改变,一会需求不能有3D边框,一会不能有下拉条,要想知道网页下载完成的回调了,等等...
1: 首先去掉3D边框网页程序员绝对可以实现的,但是给我了句我真心改不了,所以我只能硬着头皮又在MSDN查资源来解决3D边框和下拉条的问题,
就是为了实现GetHostInfo这个函数,搞的我又写了很多代码;
if ( __ui_info )
{
__ui_info->cbSize = sizeof( DOCHOSTUIINFO );
__ui_info->dwFlags = DOCHOSTUIFLAG_NO3DBORDER|DOCHOSTUIFLAG_SCROLL_NO;
__ui_info->dwDoubleClick = DOCHOSTUIDBLCLK_DEFAULT;
}
这样3D边框和下拉条就自然消失了;
2 :去掉右键菜单那就更容易了,ShowContextMenu 当你在浏览器右键的时候就会调用者个回调函数,所以你可以在这里面处理右键菜单‘
STDMETHODIMP CClientBrowser::ShowContextMenu( DWORD __dwid , POINT* __point , IUnknown* __unknown , IDispatch* __dispatch )
{
return ( S_OK );
}
返回S_OK右键菜单就可以消失,对于C++程序员来说这太幸福了;
好了,这是我第一次在CSDN写博客,希望对大家有帮助;需要代码的同学加我Q121593025,共同进步,才是硬道理;
- 关于WebBrowser使用问题
- 关于WebBrowser导航问题
- 关于webBrowser使用代理的问题 [已结贴,结贴人:liuyh83]
- 关于WebBrowser的一些问题
- 关于webbrowser 跨域等问题
- 关于C# webbrowser中documentText乱码问题
- 关于使用WinHtmlEditor控件获得html代码加载到wpf中webbrowser控件上乱码问题
- 关于 WinForm中webbrowser控件的使用
- 关于webbrowser
- 使用WebBrowser解决B/S打印问题
- webbrowser在线程中使用的问题
- webBrowser使用
- WebBrowser使用
- WebBrowser使用
- 关于WebBrowser中弹出窗口(alert,confirm)的问题
- 关于WMobile中WebBrowser控件存在的问题(C#)
- 关于在webbrowser控件里面打开word文档的问题
- [C#问题--WebBrowser继续追踪]WebBrowser在Form程序中使用的感想2
- ubuntu软件源修改
- 如何优化cocos2d程序的内存使用和程序大小
- 《设计模式》学习笔记——外观模式
- CSDN高校俱乐部——你的大学成长三部曲
- Linux中记录终端(Terminal)输出到文本文件
- 关于WebBrowser使用问题
- openSUSE学习笔记二
- 11g下编译bbed报错,查找了下面的解决方法,目前没有10g环境,先mark下
- ubuntu 网络配置
- 非接触读卡智能LED大屏显示系统方案
- 黑马程序员——反射问题代码学习点
- 关于OnPaint函数覆盖编辑框的问题
- Spket Eclipse插件使用教程
- 关于zealer的mx3和小米3评测的一点看法