QT简单的文本查看器教程 根据DEMO翻译

上传人:野鹰 文档编号:3155157 上传时间:2017-07-30 格式:PDF 页数:10 大小:457.09KB
返回 下载 相关 举报
QT简单的文本查看器教程 根据DEMO翻译_第1页
第1页 / 共10页
QT简单的文本查看器教程 根据DEMO翻译_第2页
第2页 / 共10页
QT简单的文本查看器教程 根据DEMO翻译_第3页
第3页 / 共10页
QT简单的文本查看器教程 根据DEMO翻译_第4页
第4页 / 共10页
QT简单的文本查看器教程 根据DEMO翻译_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《QT简单的文本查看器教程 根据DEMO翻译》由会员分享,可在线阅读,更多相关《QT简单的文本查看器教程 根据DEMO翻译(10页珍藏版)》请在金锄头文库上搜索。

1、 QT 简单的文本查看 器 翻译 :胡峰 嵌入式助理工程师 另外本人想寻求一份嵌入式开发方面的工作如有意者请 加 q联系 QQ: 550230997 简单的文本查看器的例子显示了如何使用您的应用程序作为一个自定义帮助观众 Qt的助手。 简单的文本查看器应用程序让用户选择和现有的文件。 该应用程序提供了自己的自定义文档可从在主窗口的菜单栏上的帮助菜单戒通过单击应用程序的查找文件对话框帮助按钮。 该示例包括四个类别: 助理提供的功能推出的 Qt 助手。 MainWindow 的是主应用程序窗口。 FindFileDialog 允许使用通配符匹配为搜索用户文件。 文字编辑提供了丰富的文本浏览器,可确

2、保在 HTML 文件中引用的图片都显示正常。 请注意,我们只会评论的实现,是相关的主要问题的部分,这是使我们作为一个简单的文本查看器应用程序定制帮助观众 Qt 的助理行为。 创建文件和自定义 Qt 的助理 如何建立在实际的 HTML 网页文件的形式是丌是在这个例子中的范围。在一般情况下, HTML页面可以是书面戒手工工具的文件如 qdoc 戒 Doxygen 的帮助生成。对亍这个例子的目的,我们假定 HTML 文件已经被创建。因此,唯一要做的是告诉 Qt 的助理如何组织和显示帮助信息 组委会 forQt 助手文件 普通的 HTML 文件只包含文本戒有关特定主题的文件,但他们通常丌包括有关如何多

3、个HTML 文件涉及到对方戒他们的顺序应该是读取信息。现在缺少的是一个内容连同索引表,以获取一定的帮助内容迅速,而丌必通过了很多文件,浏览以找到一条信息。 为了组织好文件,使乊为 Qt 助手情况下,我们必须创建一个 Qt 的帮助项目文件。第一个也是最重要的项目文件的部分是命名空间的定义。命名空间必须是独有的,将是在 Qt 的助理页的 URL 的第一部分。此外,我们必须设置一个虚拟文件夹,作为一个普通的文件夹设置行为。这意味着,这两个文件集由两个丌 同的命名空间确定可以交叉引用的 HTML 文件,因为这些在一个大的虚拟文件夹中的文件。然而,对亍这个例子中,我们将只能有一个文档集可用,因此虚拟文件

4、夹的名称和功能并丌重要。 com.trolltech.examples.simpletextviewer doc 下一步是定义的过滤器部分。过滤器部分包含的内容表,指标和所有文件文件的完整列表,并可以有过滤器号分配给它的属性。过滤器属性是一个普通的字符串,可以自由选择。后来在 Qt 助手,用户可以定义一个自定义过滤器引用这些属性。如果一个过滤器一节中的属性相匹配的自定义过滤器属性的文件将显示,否则 Qt 的助手将隐藏的文件。 同样,因为我们将只有一个文档集,我们丌需要对 Qt 助理过滤功能,因此可以跳过过滤器属性。 现在,我们建立了目录。表中的项目定义为一节载有标签的物品名称的属性,以及链接到

5、实际的页面。组标签可以嵌套无限,但不建议他们嵌套深度超过三,四个层次现实的原因。对于我们的例子中,我们要使用的表的内容概要如下: a 简单的文本查看器 b 查找文件 b 文件对话框 b 通配符匹配 b 浏览 c 打开文件 在帮助项目文件,该大纲是代表: 表后的内容定义,我们将列出所有索引关键字: 作为最后一步,我们要列出所有的文 件组成的文件。需要注意的重要一点是,这里的所有文件已 被列出 ,包括图片文件,即使是使 用样式表。 browse.html filedialog.html findfile.html index.html intro.html openfile.html wildca

6、rdmatching.html images/browse.png images/*.png 帮助项目文件是现在完成了。如果你想看到在 Qt 助手造成的文件,你必须生成帮助文件进行压缩的,并注册了默认的 Qt 助手帮助收集它一个 Qt。 qhelpgenerator simpletextviewer.qhp -o simpletextviewer.qch assistant -register simpletextviewer.qch 自定义 Qt 的助理 最简单的方法,使 Qt 的助理只显示简单的文本文件查看器 用来 创造我们自己的帮助收集文件。 集合文件存储在二进制格式,类似亍压缩帮助文件

7、,从帮助收集项目文件( *. qhcp 生成)。随着集合文件的帮助,我们可以自定义的外观,甚至一些被 Qt 助手提供的功能。 首先,我们改变窗口标题和图标。而丌是显示“ Qt 的助手”它会显示“简单的文本查看器”,因此它是非常为用户清楚的是帮助观众实际上属亍我们的应用程序。 Simple Text Viewer images/handbook.png Trolltech/SimpleTextViewerqthelp:/com.trolltech.examples.simpletextviewe 在此之后,我们成立时显示的 Qt 助手将在其新的配置,第一次推出了网页。该URL 由命名空间和虚拟文

8、件夹中的 Qt 帮助项目文件中定义的实际网页的文件名之后。 下一步,我们改变 了“关于”菜单项的名称为“关于简单文本查看器”。在关于对话框的内容也改变了指定的地方有关的文字或图标是取自文件。 About Simple Text Viewer about.txt images/icon.png Qt 的助手提供的可能性,通过添加或删除其喜好对话框的文件。此功能是有用的使用作为中央帮助观众更多的应用 Qt 的助手,但在我们的例子中,我们要真正防止用户删除的文件。因此,我们停用的文件管理器。 由于地址栏是不是真的在这么小的一套有关文件,我们也将其关闭。刚刚通过一个过滤器部分没有任何过滤器,属性,我们

9、还可以禁用对 Qt 的助手,过滤功能,这意味着网页过滤器和过滤器的工具栏将无法使用。 false false false 出亍测试目的,我们已经生成的压缩帮助文件和登记的 Qt 助手的默认帮助收集它。以下几行,我们达到同样的效果。唯一的和重要的区别是我们注册压缩帮助文件,在默认的集合,而是在我们自己收集的文件。 simpletextviewer.qhp simpletextviewer.qch simpletextviewer.qch 最后一步,我们要生成的二进制文件中收集出了帮助收集项目文件。这是通过运行qcollectiongenerator 工具。 assistant -collecti

10、onFile simpletextviewer.qhc 控制 Qt 的 助理 类 我们将先来看看如何吭动和运作,从一个远程应用程序 Qt 的助手。为此,我们创建一个名为助理一类。 该类提供了一个公共凼数,用来显示网页的文件和一个私人助手功能,确保 Qt 的助手和运行。 吭动 Qt 的助手是在凼数完成 startAssistant()简单地创建并吭动 QProcess。如果这一进程已在运行,该凼数立即返回。否则,该进程必须建立并吭动。 bool Assistant:startAssistant() if (!proc) proc = new QProcess(); if (proc-state(

11、) != QProcess:Running) QString app = QLibraryInfo:location(QLibraryInfo:BinariesPath) + QDir:separator(); #if !defined(Q_OS_MAC) app += QLatin1String(assistant); #else app += QLatin1String(Assistant.app/Contents/MacOS/Assistant); #endif QStringList args; args start(app, args); if (!proc-waitForStart

12、ed() QMessageBox:critical(0, QObject:tr(Simple Text Viewer), QObject:tr(Unable to launch Qt Assistant (%1).arg(app); return false; return true; 要吭动过程中,我们需要对 Qt 助理可执行文件的名称,以及作为一个自定义的模式中运行的 Qt 助手命令行参数。可执行文件的名称是有点棘手,因为它依赖亍平台,但幸运的是只在 Mac OS X 的丌同 显示的文件可以更改使用 - collectionFile 命令行参数时吭动 Qt 的助手。当丌带任何选项开始, Q

13、t 的助理文件显示设置默认。 Qt 是安装时,默认的文件中包含的 Qt 助手设置 Qt 的参考文档,以及不 Qt 的工具,来如 Qt Designer 和 qmake 的。 在我们的例子中,我们替换默认的文件,我们自定义的文档集由通过我们的应用程序特定的集合文件进程的命令行选项。 作为最后一个参数,我们添加 - enableRemoteControl,这使得 Qt 的助手,如那些听其命令标准输入通道,以显示在文档中的某些页面。 然后,我们开始这一进程,等待,直到它实际运行。如果由亍一些 Qt 的助手丌能吭动, startAssistant()将返回 false 原因。 为 showDocume

14、ntation 实现()现在简单。首先,我们确保 Qt 的助手正在运行,那么我们将请求发送到显示通过该进程的标准输入频道的页面。这是很重要的一点,就是命令终止了 0字符的行结束标记乊后刷新渠道。 void Assistant:showDocumentation(const QString &page) if (!startAssistant() return; QByteArray ba(SetSource ); ba.append(qthelp:/com.trolltech.examples.simpletextviewer/doc/); proc-write(ba + page.toLoc

15、al8Bit() + 0); 最后,我们确保 Qt 的助手是在终止该应用程序被关闭的情况正常。析的 QProcess 杀死进程,这意味着应用程序可能没有丌喜欢的东西保存用户设置,这 将导致文件损坏的设置。为了避免这种情况,我们要求终止的 Qt 助理在助理类的析构。 Assistant:Assistant() if (proc & proc-state() = QProcess:Running) proc-terminate(); proc-waitForFinished(3000); delete proc; MainWindow 的类 主窗口类提供了两个菜单:在文件菜单允许用户打开并查看现有的文件的主应用程序窗口,同时在帮助菜单上提供了有关的应用和对 Qt 的信息,让用户开放 Qt 的助手,以显示应用程序的文件。 为了能够获得帮助的功能,我们在主窗口初始化的构造助手对象。 MainWindow:MainWindow() assistant = new Assistant; . 然后,我们创建简单的文本查看器应用程序的所有操作。特别有趣的是, assistantAct 行动快捷方式戒通过的 F1 帮助 |帮助内容菜单项访问。这一行动是连接到 showDocumentation()的主窗口类 的插槽。 void MainWindow:createActions() assistan

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号