24小时热门版块排行榜    

查看: 371  |  回复: 4
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

ddwv

木虫 (小有名气)

还没想好^_^

[交流] 【求助】在Mapbasic中运行chm帮助文件

请教各位,如何能实现在Mapbasic中运行chm帮助文件,或调用其他应用程序呢?急~~,重谢^_^

[ Last edited by ewigkeit on 2008-4-1 at 21:12 ]
回复此楼
My sun!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

DLXXGK

铁杆木虫 (著名写手)

vb中调用.chm文件的方法
   方法一 使用F1键:
   这种方法最简单,只需如下代码即可:
Private Sub Form_Load()
App.HelpFile = app.path & "help.chm" '调用与主程序同目录下的help.chm帮助文件,按F1键调用
End Sub
   方法二 使用SendKeys方法:
Private Sub Form_Load()
App.HelpFile = app.path & "help.chm"
End Sub
private Sub CmdHelp_Click()
SendKeys "{F1}" '发送击键到活动窗口
End Sub
   方法三 使用Shell函数:
private Sub CmdHelp_Click()
Shell "hh.exe help.chm", vbNormalFocus 'help.chm为指定的帮助文件,可包含路径。
End Sub
   方法四 使用HtmlHelp函数:
  先声明如下API:
Option Explicit
Private Declare Function HtmlHelpA Lib "hhctrl.ocx" (ByVal hwndCaller As Long, ByVal pszFile As String, ByVal uCommand As Long, ByVal dwData As Long) As Long
'hwndCaller指定调用者的窗口,pszFile指定要调用的文件,uCommand是发送给 HtmlHelp的命令,dwData是uCommand的参数。
   然后在过程中调用:
private Sub CmdHelp_Click()
dim i as string
i = app.path & "help.chm" '用变量i记录与主程序同目录下的help.chm帮助文件
HtmlHelpA Form1.hWnd, i, 0, 0
End Sub
   方法五 使用ShellExecute函数:
   先声明如下API:
Option Explicit
'声明API函数用于异步打开一个文档
Private 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
Private Const SW_SHOWNORMAL = 1

   然后在过程中调用:


private Sub CmdHelp_Click()
dim a as long
Dim b As String
b = App.Path & "help.chm" '用变量b记录与主程序同目录下的help.chm帮助文件
a = ShellExecute (0, "open", b, "", "", SW_SHOWNORMAL)
End Sub
网上查询的,没有经过测试,由于mapbasic与vb调用方式有些相同,作为参考!
4楼2008-04-02 14:33:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

阳光阳光

木虫 (著名写手)

用chm编译器编译好文件后,然后在mapbasic中调用文件就是了。不知对不,以前学过一些,现在都忘了
2楼2008-04-01 18:43:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ddwv

木虫 (小有名气)

还没想好^_^

编译好了 就是不知道如何调用,直接写路径不能识别啊 请问需要用到哪些语句呀
My sun!
3楼2008-04-02 10:28:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ddwv

木虫 (小有名气)

还没想好^_^

非常感谢楼上的两位,要是有直接的MapBasic的方法就更好啦^_^   我不会转金币,麻烦版主帮忙各转10个金币给他们,谢谢!
My sun!
5楼2008-04-03 10:46:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见