如何为特定对话框控件添加上下文相关帮助按钮

时间:2014-10-29 06:36:29

标签: mfc context-sensitive-help

我有一个MFC应用程序(10年前的应用程序),它为每个对话框提供上下文相关的帮助。我想在特定的组合框上添加帮助,以及此控件旁边的一个小问号按钮。用户可以选择组合框并点击F1,也可以单击组合框旁边的按钮,它将跳转到专门针对此组合框的帮助页面,而不是整个对话框的常规帮助。

  • 在对话框资源属性中,我将“上下文帮助”设置为True。
  • 在组合框属性中,我将“帮助ID”设置为True。
  • 在myapp.hpp中,我已将“HIDC_MYCOMBOBOX = mycombobox_help.htm”添加到[ALIAS]部分,并在[MAP]部分中包含了resource.hm文件。
  • 再次在app.hpp文件中,对话框使用“HIDD_MYDIALOG = mydialog_help.htm“

然后选择组合框然后按F1仍会显示mydialog_help.htm,而不是mycombobox.htm。

  1. 为控件使用单独的帮助页面我缺少什么?
  2. 是否可以将控件重定向到主页面中的锚点?东西,沿着...的路线 HIDC_MYCOMBOBOX = mydialog_help.htm #mycombobox
  3. 我添加了“?”按钮运行以下代码,但这也没有给出控件的上下文,只打开mydialog_help.htm。

    HELPINFO    lhelpinfo;
    
    lhelpinfo.cbSize = sizeof(lhelpinfo);
    lhelpinfo.iContextType = HELPINFO_WINDOW;
    lhelpinfo.iCtrlId = IDC_BALANCING_METHOD;
    lhelpinfo.hItemHandle = GetDlgItem(IDC_BALANCING_METHOD)->m_hWnd;
    lhelpinfo.dwContextId = HIDC_BALANCING_METHOD;
    lhelpinfo.MousePos = POINT();
    
    CDialog::OnHelpInfo(&lhelpinfo);
    

0 个答案:

没有答案