调用*.chm文件,帮助窗口不能弹出到用户窗口的前面,怎么办?

xxj 2000-07-20 03:46:00
用微软的超文本帮助制作工具HTMLHELP.EXE V1.1.作出来的*.chm文件,调用它时,帮助窗口不能弹出到用户窗口的前方,只在任务栏上有,我该怎么办,可以通过设置帮助窗口的属性来达到吗?
...全文
148 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiujiejushi 2000-08-30
  • 打赏
  • 举报
回复
是这样的,HtmlHelp()的第一个参数是窗口句柄,如果是调用主窗口,则帮助窗口成为子窗口并显示在前边,关闭主程序会同时关闭帮助窗口。如果是NULL,就跟调用程序没有关系了。
在VC里使用需要包含htmlhelp.h,在工程设置里添加htmlhelp.lib,在环境设置里添加这两个文件所在的目录,在html help workshop 的安装目录里。

HtmlHelp(this->m_hWnd,"myhelp.chm",HH_DISPLAY_TOPIC,0)
jiujiejushi 2000-08-21
  • 打赏
  • 举报
回复
好像是用HtmlHelp函数调用帮助的,就象以前的WinHelp一样.
shines77 2000-08-16
  • 打赏
  • 举报
回复
我想用 ShellExecute() 函数就可以调用了。

格式是:
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

范例(VB):
Dim Dummy As Long
Dim HelpChmFile As String
HelpChmFile = "C:\Program Files\iSoft\help.chm"
Dummy = ShellExecute(0&, vbNullString, HelpChmFile, vbNullString, vbNullString, vbNormalFocus)

注意用vbNormalFocus即可实现有焦点,即可弹出到用户窗口前面。

VC++的范例:
函数原形为:
HINSTANCE ShellExecute(
HWND hwnd,
LPCTSTR lpOperation,
LPCTSTR lpFile,
LPCTSTR lpParameters,
LPCTSTR lpDirectory,
INT nShowCmd
);
用ShellExecute(NULL,"open","Sample.chm",NULL,NULL,SW_SHOW)
就可以达到目的。
prefix 2000-08-11
  • 打赏
  • 举报
回复
我怎么不会? 你是怎么调用的?
华南虎哥 2000-08-11
  • 打赏
  • 举报
回复
一般都没有办法,你要不在你的程序里控制它

6,849

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧