曙海教育集团论坛开发语言培训专区C++语言开发 → CBuilder中帮助文件的连接及显示讨论


  共有5416人关注过本帖树形打印

主题:CBuilder中帮助文件的连接及显示讨论

美女呀,离线,留言给我吧!
wangxinxin
  1楼 个性首页 | 博客 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:青蜂侠 帖子:1393 积分:14038 威望:0 精华:0 注册:2010-11-12 11:08:23
CBuilder中帮助文件的连接及显示讨论  发帖心情 Post By:2010-12-10 14:14:54

前几天需制作一帮助文件,通过网查找及试验发现以下方法,希对有同样需要的

  人们有一些帮助。

  目前的帮助文件主要有三类:

  *.hlp

  *.chm

  *.html

  制作方法各有不同,本文主要提及在CBuilder中帮助按键的检测及应用问题。

  方法1:

  在Form 属性中设

  __property AnsiString HelpFile = {read=FHelpFile, write=FHelpFile};

  及

  HelpContext

  方法2:

  在Form 事件中设

  __property Classes::THelpEvent OnHelp = {read=FOnHelp, write=FOnHelp};

  方法3:

  在增加一件菜单项,对菜单项设置热键F1

  后通过事件进行程序控制

  以上三个方法均是对单个窗口进行帮助控制。

  方法4:

  通过设置

  Application->OnMessage = ....;

  该方法可以对有所有的窗口统一控制及对一些窗口单独控制。

  方法5:

  其它,如在各子窗口,控件中对帮助事件进行捕捉,并处理。

  关键代码段:

  void TForm1::F1HelpUse(void)//帮助显示

  {

  HINSTANCE hInst= ShellExecute(

  0,

  "open",

  "F:\\HelpUse\\NetHelp\\main0.htm",//本行可根据具体更改

  "",

  "F:\\HelpUse\\NetHelp",//本行可根据具体更改

  SW_SHOWNORMAL

  );

  //Returns a value greater than 32 if successful

  }

  //F1按键获取

  void __fastcall TForm1::AppMessage(tagMSG &Msg, bool &Handled)

  {

  if (Msg.message ==WM_KEYDOWN)

  {

  if(Msg.wParam==VK_F1)

 


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

CBuilder中帮助文件的连接及显示讨论








签名