行业资讯
「Qt Widget中文示例指南」如何实现文档查看器?(二)
Qt是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写所有平台无差别运行更提供了几乎所有开发过程中需要用到的工具。如今Qt已被运用于超过70个行业、数千家企业支持数百万设备及应用。文档查看器是一个显示和打印JSON、文本和PDF文件的Widgets应用程序。Document Viewer文档查看器演示了如何使用带有静态和动态工具栏、菜单和操作的QMainWindow此外它还演示了基于小部件的应用程序中的以下特性使用QSettings查询和保存用户参数并管理以前打开的文件历史记录。控制光标悬停在小部件上时的操作。创建动态加载的插件。在上文中主要介绍了创建一个应用程序和主窗口的一些类本文将继续介绍一些其他类请持续关注哦~创建一个应用程序和主窗口AbstractViewer 类AbstractViewer提供了一个通用的API来查看、保存和打印文档可以查询文档和查看器的属性文档有内容吗?修改过了吗?是否支持概览(缩略图或书签)?AbstractViewer为派生类提供了受保护的方法以便在主窗口上创建操作和菜单。为了在主窗口上显示这些资产它们是主窗口的父类。AbstractViewer负责删除和销毁它创建的UI资产它继承自QObject来实现信号和插槽。信号void uiInitialized();该信号在查看器接收到主窗口上有关UI资源的所有必要信息后发出。void printingEnabledChanged(bool enabled);该信号在启用或禁用文档打印时发出这发生在成功加载新文档之后或者例如删除了所有内容之后。void printStatusChanged(AbstractViewer::PrintStatus status);在开始打印过程后这个信号通知打印过程中的变化。void documentLoaded(const QString fileName);此信号通知应用程序文档已成功加载。TxtViewer类TxtViewer是一个简单的文本查看器继承自AbstractViewer它支持编辑文本文件、复制/剪切和粘贴、打印和保存更改。JsonViewer类JsonViewer在QTreeView中显示JSON文件在内部它将文件的内容加载到QJsonDocument中并使用它来使用JsonItemModel填充自定义树模型。JSON查看器插件演示了如何实现继承自QAbstractItemModel的自定义项模型JsonTreeItem类提供了一个基本的API用于操作JSON数据并将其传播回底层的QJsonDocument。JsonViewer使用文档的顶级对象作为导航的书签其他节点(键和值)可以作为附加书签添加也可以从书签列表中删除。QLineEdit用作在JSON树中导航的搜索字段。PdfViewer类PdfViewer类(和插件)是PDF Viewer小部件示例的分支它演示了如何使用qscroll平滑地浏览文档。
郑州网站建设
网页设计
企业官网