[关闭]
@lniwn 2017-11-20T19:23:03.000000Z 字数 2128 阅读 1205

Cef对象介绍

chromium


CefSettings

可以通过CefSettings结构体来设置cef应用程序的特性。一些常用配置包括:

CefBrowser and CefFrame

CefBrowser和CefFrame对象用来发送命令给浏览器以及在回调函数里获取状态信息。每一个CefBrowser对象都有一个主CefFrame对象来代表最顶层的frame,有0个或者多个相关联的CefFrame对象来代表子frame。比如一个浏览器加载的网站中有两个iframe标签的,此时,一个CefBrowser对象会有三个CefFrame对象(一个顶层frame和两个子frame)。
利用浏览器的主frame加载一个URL:
browser->GetMainFrame()->LoadURL(some_url);
浏览器回退
browser->GoBack();
获取主frame的HTML内容

  1. // Implementation of the CefStringVisitor interface.
  2. class Visitor : public CefStringVisitor {
  3. public:
  4. Visitor() {}
  5. // Called asynchronously when the HTML contents are available.
  6. virtual void Visit(const CefString& string) OVERRIDE {
  7. // Do something with |string|...
  8. }
  9. IMPLEMENT_REFCOUNTING(Visitor);
  10. };
  11. browser->GetMainFrame()->GetSource(new Visitor());

CefBrowser和CefFrame对象存在于browser进程以及render进程中。浏览器的操作主要通过CefBrowser::GetHost()方法来掌控。比如,可以用如下方式获取浏览器窗口句柄:

  1. // CefWindowHandle is defined as HWND on Windows, NSView* on Mac OS X
  2. // and GtkWidget* on Linux.
  3. CefWindowHandle window_handle = browser->GetHost()->GetWindowHandle();

其它一些方法可以实现历史导航、加载字符串、请求、发送编辑命令、获取文本内容,更多信息,请查看具体方法的完整文档。

CefApp

更多信息,可参考在线API文档

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注