MFC状态栏-使文本与按钮行为的链接

MFC Statusbar - Making text a link with button behavior

本文关键字:链接 按钮 状态栏 文本 MFC      更新时间:2023-10-16

我试图在MFC应用程序中使用状态栏,如下所述

我设法在我的状态栏中添加项目,如链接中所述。没有什么我可以张贴在这里作为代码参考,因为它目前1:1的链接。我想要的是让文本成为链接,这样当点击时,我会捕捉这个回调并做一些事情。我不知道怎么做,但我以前在应用程序中看到过。

我使用类似的东西,但您需要从CStatusBar派生自己的类。


a)将以下代码放在派生的StatusBar.cpp

的顶部
BEGIN_MESSAGE_MAP(CMyStatusBar, CStatusBar)
    ON_WM_LBUTTONUP()
END_MESSAGE_MAP()


b)在派生的StatusBar.h

中为CMyStatusBar添加以下声明
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);


c)稍后在派生的StatusBar.cpp

中放置以下代码
void CMyStatusBar::OnLButtonUp(UINT nFlags, CPoint point)
{   CRect rc;
    int nPaneIndex = CommandToIndex(ID_INDICATOR_TIME);
    GetStatusBarCtrl().GetRect(nPaneIndex, &rc);
    if (rc.PtInRect(point))
    {   // do something
    }
}