如何在MFC对话框中添加右键单击事件处理程序以进行静态文本



任何人都可以告诉我,如何在对话框上添加静态文本的右键单击事件处理程序。

因此,我有一个模态对话框,我在上面有一个静态文本控件。当我尝试为其添加活动处理程序时,

我只有选项:

STN_CLICKED
STN_DBCLK
STN_ENABLE
STN_DISABLE
NM_THEMECHANGED.

没有右键的消息。我需要处理右键单击事件。您能帮我知道吗,有什么方法可以添加右键单击事件处理程序?

您可以做的是...

  1. 确保您的静态控件具有独特的ID,例如:IDC_STATIC1。它不能是idc_static。

  2. 使用ClassWizard

  3. 将控件与CStatic变量相关联
  4. 使用编辑器覆盖对话框的OnContextMenu

  5. 现在您可以做类似的事情:

    void CMFCApplication1Dlg::OnContextMenu(CWnd* pWnd, CPoint point)
    {
        CRect rect;
        m_staticLabel.GetWindowRect(&rect);
        if (rect.PtInRect(point))
        {
            // Show context menu
        }
    }
    

最新更新