MFC:上下文帮助(?按钮)到 MDIframe 的标题栏

MFC: Context Help (? Button) to Title Bar of MDIframe

在 MFC 中,我们如何在 child 框架的标题栏中添加 (?) 上下文帮助按钮。 我试图在 precreatewindow 上添加 window 样式,但它不会在标题栏中显示帮助按钮。 我知道如何在对话框和属性表上添加上下文帮助,但我无法添加 for child frame window

BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs)
{
    cs.style &= ~WS_MAXIMIZEBOX;
    cs.style &= ~WS_MINIMIZEBOX;
    cs.style |= WS_SYSMENU;
    cs.style |= WS_EX_CONTEXTHELP;
    if( !CMDIChildWnd::PreCreateWindow(cs) )
        return FALSE;

    return TRUE;
}

WS_EX_CONTEXTHELP 是一种扩展样式,因此您应该将其添加到 cs.dwExStyle 而不是 cs.style。另外,我相信你默认得到 WS_SYSMENU,所以像下面这样的东西应该可以解决你的问题:

BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs)
{
    cs.style &= ~WS_MAXIMIZEBOX;
    cs.style &= ~WS_MINIMIZEBOX;
    cs.dwExStyle |= WS_EX_CONTEXTHELP;

    if( !CMDIChildWndEx::PreCreateWindow(cs) )
        return FALSE;

    return TRUE;
}

此致,