delphi如何调用CHM帮助,不同窗口中按F1直接打开相应的帮助.求简单的代码样例与大致的过程.
2013-06-18
展开全部
可以这么做:建立一个窗口,作为基类。窗口属性:KeyPreview设为True在这个窗口上的FormKeyDown事件上写:if Key=VK_F1 thenbegin //打开帮助文档: mypath:=ExtractFilePath(Application.ExeName)+'mytest.chm';//chm所在路径
if FindFirst(mypath,faAnyFile,Sr)<>0 then
begin
application.MessageBox(pchar('系统无法打开'+mypath+#13+'请确认文件路径是否正确或帮助文件mytest.chm是否存在!!!!!!!'),'提示信息',mb_iconinformation+mb_ok);
exit;
end;shellexecute(handle,'open',pchar(mypath),nil,nil,sw_shownormal);//打开。end;基类上的代码写完后,所有窗口都继承主个基类窗口,就行了。如:TFom1 = class(TFrmSample)//FrmSample即为基类窗口。 当然如果不怕麻烦的话。就是在每个窗口的FormKeyDown事件添加上代码。。。。。。。。
if FindFirst(mypath,faAnyFile,Sr)<>0 then
begin
application.MessageBox(pchar('系统无法打开'+mypath+#13+'请确认文件路径是否正确或帮助文件mytest.chm是否存在!!!!!!!'),'提示信息',mb_iconinformation+mb_ok);
exit;
end;shellexecute(handle,'open',pchar(mypath),nil,nil,sw_shownormal);//打开。end;基类上的代码写完后,所有窗口都继承主个基类窗口,就行了。如:TFom1 = class(TFrmSample)//FrmSample即为基类窗口。 当然如果不怕麻烦的话。就是在每个窗口的FormKeyDown事件添加上代码。。。。。。。。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询