Mingz技术博客

...

导航

QT webkit学习笔记(1)

QT webkit学习笔记 by chuckGao

 

一、QT webkit简介

1.Qt

Qt(发音同 cute)是一个跨平台的C++应用程式开发框架,有时又被称为C++部件工具箱。Qt被用在KDE桌面环境、Opera、Google Earth、Skype、Adobe Photoshop Album和VirtualBox的开发中。它是挪威Qt Software 的产品,2008年6月17日被芬兰的诺基亚(Nokia)公司收购,以增强该公司在跨平台软件研发方面的实力。

 

2.Webkit

WebKit是Mac OS X v10.3及以上版本所包含的软件框架(对v10.2.7及以上版本也可通过软件更新获取)。同时,WebKit也是Mac OS X的Safari网页浏览器的基础。WebKit是一个开源项目,主要由KDE的KHTML修改而来并且包含了一些来自苹果公司的一些组件。

传统上,WebKit包含一个网页引擎WebCore和一个脚本引擎JavaScriptCore,它们分别对应的是KDE的KHTML和KJS。不过,随着JavaScript引擎的独立性越来越强,现在WebKit和WebCore已经基本上混用不分(例如Google Chrome和Maxthon 3采用V8引擎,却仍然宣称自己是WebKit内核)。

 

3.Qt webkit

简单的说,Qt webkit就是Qt对Apple公司webkit的支持而开发的库,主要包括以下几个类

QWebDatabase

Access to HTML 5 databases created with JavaScript

QWebFrame

Represents a frame in a web page

QWebHistory

Represents the history of a QWebPage

QWebHistoryInterface

Interface to implement link history

QWebHistoryItem

Represents one item in the history of a QWebPage

QWebHitTestResult

Information about the web page content after a hit test

QWebPage

Object to view and edit web documents

QWebPluginFactory

Creates plugins to be embedded into web pages

QWebSecurityOrigin

Defines a security boundary for web sites

QWebSettings

Object to store the settings used by QWebPage and QWebFrame

QWebView

Widget that is used to view and edit web documents

 

二、QWebView Class介绍

QWebView类是Qt webkit模块中最常用到的类之一。它用来创建一个可以view以及edit文档的widget。也就是说,我们可以通过QWebView来查看和编辑网页(编辑网页视具体情况实现)。同时,QWebView可以包含QWebPage和QWebFrame的对象,它们三者的关系可以表示为:

 

 

QWebPage和QWebFrame将会在后面介绍。

 

三、QWebPage Class介绍

QWebPage类和QWebView类一样,都用于查看和编辑网页,不同的是,从两者的包含关系上我们可以知道,QWebView可以用于打开多个网页,而里面具体的网页对象就是QWebPage。QWebPage通过mainframe()方法可以得到More QWebView-like functions,如load(), setUrl() 和 setHtml()。

 

 

四、QWebFrame Class介绍

QWebFrame可以算是QWebPage的元对象了,每一个QWebPage至少有一个QWebFrame,它被称作QWebPage的mainframe,通过QWebPage:: mainframe()方法得到。换言之,QWebFrame依附QWebPage存在。通过调用QWebFrame的page()方法返回它所在的QWebPage对象。而zoomFactor()方法则实现了网页内容的缩放。

 

posted on 2013-07-30 15:44  Mingz2013  阅读(464)  评论(0)    收藏  举报