qt webkitwidgets,qt5 webkit

  qt webkitwidgets,qt5 webkit

  Qt WebKit-lotu shy-博客花园中的Webkit/qt/api文档

  QTWebkit中的Webkit/qt/api文档QTWebkit中的webkit/qt/api文档概述该目录下的文件都以前缀qweb开头,主要用于支持前端实现。核心类有qwebview、q网页和qwebframe。图中描述了三者之间的关系。(注意:图片来自QTWebkit附带的文档)

  图qwebview、qwebpage和qwebframe之间的关系

  视图是逻辑视图,真正的工作分别由页面和框架来完成。页面负责处理用户动作、导航和文本编辑;画框负责画图。从webkit的角度来看,页面和框架是一对多的关系,因为一个页面下可以有框架树,但通常是一对一的关系。从构建顺序来看,页面先于框架构建。

  qwebsetting类管理配置信息,如家庭地址、代理、是否启用javascript、是否显示图片、是否支持插件等。

  类图QWebViewQWebView是QWidget的子类。QWidget是QT平台的PlatformWidget。

  QWebView.cpp有类似QWebView的详细描述。有兴趣的可以看看。

  QWebView提供了一个显示和编辑web文档的小部件。

  QWebView是QtWebKit网页浏览模块的主要widget组件。

  常用API

  加载从本地/远程加载url

  history()访问历史对象

  settings()访问设置对象。

  Url()读取当前URL。

  title()阅读当前标题

  trigger pageaction处理web操作。

  事件()

  q网页在QWebPageQWebPage.cpp中有详细解释.有兴趣的可以看看。

  QWebPage类提供可用于显示和编辑web文档的对象。

  q网页负责网页内容、设置、历史和导航。在无widget的环境下,q网页可以配合QWebFrame完成类似QWebView的功能。

  导航类型表导航类型

  NavigationTypeLinkClicked

  NavigationTypeFormSubmitted已提交

  向前导航类型后退

  导航类型重载

  NavigationTypeFormResubmitted重新提交

  WebAction表(方法q网页:triggerAction触发特定的操作)

  WebAction

  无后退

  什么都不做。

  无档链环

  打开当前链接。

  OpenLinkInNewWindow

  在新窗口中打开当前链接。

  OpenFrameInNewWindow

  在新窗口中复制当前帧

  DownloadLinkToDisk

  保存当前链接

  CopyLinkToClipboard

  将当前链接复制到剪贴板

  OpenImageInNewWindow

  在新窗口中打开图像

  DownloadImageToDisk

  将图像保存到磁盘

  CopyImageToClipboard

  图像复制到剪贴板

  CopyImageUrlToClipboard

  将图像的url复制到剪贴板

  背部

  向后导航

  向前

  向前导航

  停止

  停止加载当前页面

  StopScheduledPageRefresh

  停止刷新或重定向所有挂起的页面。

  重新加载

  重载当前页面

  ReloadAndBypassCache

  不使用本地缓存重载当前页面。

  切口

  大剪刀

  复制

  复制

  粘贴

  粘贴

  取消

  撤消最后一次编辑。

  重做

  重做最近的编辑

  MoveToNextChar

  将光标移动到下一个字符。

  MoveToPreviousChar

  将光标移动到前一个字符。

  MoveToNextWord

  将光标移动到下一个单词

  移动到上一个单词

  将光标移动到上一个单词

  MoveToNextLine

  将光标移动到下一行。

  MoveToPreviousLine

  将光标移动到上一行。

  MoveToStartOfLine

  将光标移动到行首。

  MoveToEndOfLine

  将光标移动到行尾。

  MoveToStartOfBlock

  将光标移动到块的开头。

  MoveToEndOfBlock

  将光标移动到块的末尾。

  MoveToStartOfDocument

  将光标移动到文档的开头。

  MoveToEndOfDocument

  将光标移动到文档的末尾。

  选择下一个字符

  选择下一个字符。

  选择PreviousChar

  选择下一个单词

  选择上一个单词

  选择下一行

  选择前一行

  选择开始线

  选择结束脱机

  选择StartOfBlock

  选择结束块

  选择文档开始

  选择文档结束

  删除StartOfWord

  DeleteEndOfWord

  SetTextDirectionDefault

  SetTextDirectionLeftToRight

  SetTextDirectionRightToLeft

  托格博尔德

  在粗体和正常之间切换

  倾斜倾斜

  在斜体和正常之间切换

  toggle下划线

  在下划线和正常之间切换

  检验要素

  InsertParagraphSeparator

  插入一个新段落。

  插入线分隔符

  插入新行。

  选择全部

  选择所有内容

  PasteAndMatchStyle

  从剪切板中粘贴内容并使用当前样式

  移除格式

  删除格式和样式

  切换删除线

  罢工和标准间切换

  触发器下标

  下标和基线间切换

  切换上标

  上标和基线间切换

  InsertUnorderedList

  有序列表

  缩进

  给当前选择的街区增加一个目的

  升级

  给当前选择的街区减一个目的

  置中对齐

  内容中间对齐

  调整过的

  内容两边对齐

  对齐左侧

  内容左对齐

  AlignRight

  内容右对齐

  WebWindowType表WebWindowType

  网络浏览器窗口

  规则的网络浏览器窗口

  WebModalDialog

  行为和模态对话框一样

  警报、确认和PromptJavascript中的警报、确认、提示三个弹出对话框,通常由铬客户端来实现。在qtwebkit中,这三个弹出对话框的实现放在了q网页中。三个实现均使用了提示框类。宏QT _ NO _消息框需要关闭。或者说,只有夸脱支持MessageBox才可以。

  机器人自带的浏览器不支持弹出对话框,警告、确认、提示以原木方式打印。可以自定义一个铬客户端实现这三个方法。

  EventQT中的事件由类事件定义。其子类QKeyEvent、QMouseEvent、QTouchEvent为主要的三类事件。在QTWebkit中,问网页:事件(QEvent*)为事件分发方法。它定义了统一的分发接口。具体的分发细则由私有类QWebPagePrivate实现。

  q网页:事件(QEvent*)中处理的事件非常多,详见下表。

  事件类型

  计时器

  d-时间事件

  鼠标移动

  鼠标移动事件

  鼠标按钮按压

  d- mousePressEvent

  MouseButtonDblClick

  d- mouseDoubleClickEvent

  MouseButtonRelease

  d- mouseReleaseEvent

  上下文菜单

  d-上下文菜单事件

  车轮

  d轮事件

  按键

  按键事件

  按键释放

  d-键释放事件

  FocusIn

  d-焦点事件

  聚焦出去

  d焦点事件

  拖动进入

  d-德拉根事件

  休假

  d-拖拽事件

  拖拽移动

  d-拖动移动事件

  滴

  d-下降事件

  输入方法

  d-输入方法事件

  触摸开始

  d-触摸事件

  触摸更新

  d-触摸事件

  触摸端

  d-触摸事件

  注:d为QWebPagePrivate类型的对象。

  通过阅读QWebPagePrivate的实现,可以发现,事件的处理均是由类事件处理程序的handleXXXX实现的。类事件处理程序是内核的事件处理器,所以,若要改变内核的事件处理规则可以修改该类。

  实际上,Ekioh也是类似的事件处理方法。

  事件处理程序使用平台电影站事件来描述相关的XXXXEvent,所以,需要将QXXXXEvent转化为对应的平台电影站事件。

  根据在Ekioh上的经验,一个事件由驱动抛出,交给窗口服务器系统窗口服务器系统会按照自己的定义,把事件封装,然后,交给浏览器应用浏览器。应用则把窗口服务器的事件类型转化成内核需要的平台电影站事件,交给内核处理。

  按键事件的处理流程是需要注意的。它是先派遣给编辑,然后再派遣给多姆。内核中的解释是:"在数字正射影像图事件处理之前运行输入法。为了匹配即,这种行为是必要的。

  WTF!

  如果要处理输入方法,则修改EditorClientQT。

  页面客户端在ekioh中好像还没有这个类第10页需要的客户通常直接以构造参数的方式传给第七页。

  从设计模式上看,第页和寻呼客户端间应用的是策略模式。

  寻呼客户端分别为:

  l铬合金客户端

  l上下文菜单客户端

  编辑客户

  l拖拽客户端

  l检查员客户

  l设备方向客户端编译选项设备方向控制

  l设备移动客户端-编译选项基于客户端的地理定位控制

  l地理位置客户端-编译选项基于客户端的地理定位控制

  夸脱的寻呼客户端的实现位于目录webkit/qt/WebCoreSupport。

  QWebFrameQWebFrame代表网页中的一个框架。一个网页至少包含一个主框架。其它设计可以由设计或内联框架标签创建。

  遍历数字正射影像图树的方法

  数字正射影像图树遍历与操作

  文档元素

  返回数字正射影像图树的根节点

  findAllElements,findFirstElement

  返回满足条件的元素

  加载,设置Html,设置内容

  toHtml,toPlainText

  在指定的框架中打开被链接文档

  标题、网址、基本网址,图标

  QWebFrame的渲染层种类

  渲染层

  内容杀手

  滚动条播放器

  恐慌层

  所有层

  qwebhistoryqweb settings qweb settings类用于存储q网页和QWebFrame使用的配置信息。

  每一个q网页对象都有一个属于它的QWebSettings对象。该QWebSettings对象对该页,面,张,版进行配置。

  QWebElementQWebElement类提供了便捷访问数字正射影像图元素的方法100 .数字正射影像图树的根是文件元素,可以使用方法QWebFrame:documentElement()访问。

  访问特定元素的方法:

  findAll()或findFirst()

  遍历文档也可以用第一个孩子和nextSibling()。

  数字正射影像图接口

  findAll,findFirst

  访问特定元素(由半铸钢钢性铸铁(铸造半钢)选择器指定)

  第一个孩子,下一个兄弟姐妹,最后一个孩子

  前兄弟姐妹

  属性,setAttribute

  查询或修改元素

  hasAttribute,具有属性

  移除属性

  hasFocus,setFocus

  标记名

  父母

  QWebElement遍历数字正射影像图树的实现依赖于类元素,遍历工作均由元素完成。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • web项目发布到tomcat,怎么用tomcat启动web项目
  • web项目发布到tomcat,怎么用tomcat启动web项目,在Tomcat中部署Web项目的操作方法(必看篇)
  • web设置session超时时间,ajax解决session超时
  • web服务器安全配置说明文档下载,web服务器安全配置说明文档在哪
  • web服务器安全配置说明文档下载,web服务器安全配置说明文档在哪,WEB服务器安全配置说明文档
  • webservice如何使用,webservice入门教程
  • webservice如何使用,webservice入门教程,WebService教程详解(一)
  • webqq网页版登录入口,web版qq登录
  • webqq网页版登录入口,web版qq登录,WebQQ最新登陆协议的用法
  • webpack的plugins和loaders的实现原理,webpack plugin原理
  • webpack的plugins和loaders的实现原理,webpack plugin原理,深入webpack打包原理及loader和plugin的实现
  • webapp和原生app的区别,原生app和web app
  • webapp和原生app的区别,原生app和web app,web app与原生app的区别
  • web 前端图片懒加载实现原理,实现图片懒加载的三种方式
  • web 前端图片懒加载实现原理,实现图片懒加载的三种方式,前端必会的图片懒加载(三种方式)
  • 留言与评论(共有 条评论)
       
    验证码: