在windows平台下, 有一个系统默认的,打开chm格式文件的exe. —— hh.exe
在QT中使用, 只需要
QProcess process;
process.startDetached("hh.exe help.chm");
process.waitForStarted();
这样, 就可以打开帮助文件。
定位操作
帮助文档通常会拥有多页, 针对程序中的不同界面。 上边的方式, 打开后的帮助文档会固定在其中的某一页。不是很好, 定位操作的实现, 可以在打开帮助文档后, 直接跳转到某一页。
QProcess process;
process.startDetached("hh.exe help.chm::/2.html");
process.waitForStarted();
上边代码中的2.html, 是可以获取到的,
具体方法是:
打开帮助文档 , 在想要跳转的界面, 鼠标右键 -> 属性 即可查看到具体链接, 填充到上边的对应位置即可
如果想要确保只能有一个帮助文档显示的话, 可以把调用的process改为静态成员或者静态指针。 然后在调用打开帮助文件之前, 先调用, 就可以关闭掉上一个打开的帮助文档
process.close();