Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/126.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 帮助整合Qt/C++;应用_C++_Qt_Qt4_Chm - Fatal编程技术网

C++ 帮助整合Qt/C++;应用

C++ 帮助整合Qt/C++;应用,c++,qt,qt4,chm,C++,Qt,Qt4,Chm,我使用的是代码> Qt 4.6 > C++也如此。 我有一本应用程序的用户手册(.chm),它提供了用户运行应用程序所需的帮助。现在,我希望将此帮助集成到我的应用程序中,这样当用户从应用程序中选择帮助时,将打开用户手册,并显示相应的帮助页面。通过这种方式,我可以利用已经可用的手册,用户将发现很容易浏览该文档。(因为它很熟悉) 用户手册文件采用.chm格式,具有相应的搜索关键字,从应用程序中选择时可用于显示相应的页面。与任何windows应用程序中的F1帮助类似 < > >在QT或C++中? 在

我使用的是代码> Qt 4.6 > C++也如此。 我有一本应用程序的用户手册(
.chm
),它提供了用户运行应用程序所需的帮助。现在,我希望将此帮助集成到我的应用程序中
,这样当用户从应用程序中选择帮助时,将打开用户手册,并显示相应的帮助页面。通过这种方式,我可以利用已经可用的手册,用户将发现很容易浏览该文档。(因为它很熟悉)

用户手册文件采用
.chm
格式,具有相应的搜索关键字,从应用程序中选择时可用于显示相应的页面。与任何windows应用程序中的
F1
帮助类似

< > >在QT或C++中? 在应用程序中集成帮助的其他方式有哪些?


欢迎对此提出任何建议。

是的,这是可能的。帮助系统基础结构旨在与Visual Studio中的常规Win32开发集成,但这在技术上不是必需的。基本上,您只需调用
HtmlHelp(GetDesktopWindow(),“Yourhelp.chm”,HH\u HELP\u CONTEXT,idourcurrentcontext)

是的,这是可能的。帮助系统基础结构旨在与Visual Studio中的常规Win32开发集成,但这在技术上不是必需的。基本上,您只需调用
HtmlHelp(GetDesktopWindow(),“Yourhelp.chm”,HH\u HELP\u CONTEXT,idourcurrentcontext)

尝试使用Qt帮助系统或与之一起使用(请参见)

尝试使用Qt帮助系统或与之一起使用(请参见)

也可以通过以下方式实现更多的
Qt
帮助集成

chm文件始终由
hh.exe打开

所以

可用于从应用程序中打开
Manual.chm
文件

命令

QProcess::execute("hh.exe D:/Manual.chm::page1.htm");
将打开加载了page1.htm
chm文件。这将有助于在
chm文件
中加载特定的帮助页面

在这种方法中,我们必须注意的唯一一点是,我们以前必须知道网页的文件名(此处为
page1.htm


希望这一条也有帮助……:)

更多的
Qt
帮助集成方法也可以完成,如下所示

chm文件始终由
hh.exe打开

所以

可用于从应用程序中打开
Manual.chm
文件

命令

QProcess::execute("hh.exe D:/Manual.chm::page1.htm");
将打开加载了page1.htm
chm文件。这将有助于在
chm文件
中加载特定的帮助页面

在这种方法中,我们必须注意的唯一一点是,我们以前必须知道网页的文件名(此处为
page1.htm


希望这一条也有帮助……:)

QDesktopServices::openUrl()将是更合适的方式。然后,您不需要指定hh.exe,而是依赖系统文件关联来使用正确的应用程序。因此,可移植性是Qt背后的关键。

QDesktopServices::openUrl()将是更为重要的Qt方式。然后,您不需要指定hh.exe,而是依赖系统文件关联来使用正确的应用程序。因此,可移植性是Qt背后的关键。

您能详细介绍一下HtmlHelp()函数吗。基本上我已经习惯Qt了,但是这个函数听起来确实像是VC++函数。它不是VC++特有的,而是一个普通的Win32 API函数。包括Htmlhelp.h和到Htmlhelp.lib的链接(您可以通过安装HTML Help workshop获得这些,但如果您制作了一个.chm,我想您已经有了这些)。。我是否可以从这个函数中传递索引项的值,以便它直接加载所需的页面??只要应用程序和.chm同意,精确的值就无关紧要。能否详细介绍HtmlHelp()函数。基本上我已经习惯Qt了,但是这个函数听起来确实像是VC++函数。它不是VC++特有的,而是一个普通的Win32 API函数。包括Htmlhelp.h和到Htmlhelp.lib的链接(您可以通过安装HTML Help workshop获得这些,但如果您制作了一个.chm,我想您已经有了这些)。。我是否可以通过此函数传递索引项的值,以便它直接加载所需的页面?只要应用程序和.chm同意,精确的值并不重要。