一、要求

1. 自定义 tip 提示并实时提示,跟随鼠标移动

2. 避免重复刷导致 tip 闪烁

3. picture 控件添加自定义变量

二、tip 涉及

2.1 CMFCToolTipCtrl、CMFCToolTipInfo

  CMFCToolTipCtrl* m_ptooltip; // 注册控件、传递提示消息
  CMFCToolTipInfo* m_ttinfo; // 样式处理

- 示例:https://www.cnblogs.com/kuaixue/p/13723093.html  

2.2 CToolTipCtrl

- 示例:https://www.cnblogs.com/htj10/p/11704225.html

三、分析

3.1 对操作栏、工具栏等多种控件提示时,自定义提示回调函数处理:

- ON_NOTIFY_EX(TTN_NEEDTEXT, 0, SetTipText)

3.2 多样化提示框:

- CMFCToolTipCtrl、CMFCToolTipInfo

3.2 自定义变量控件时,以列表为例:

- mfc 列表控件,通过当前项处理可以指定提示,且动态;

- 自定义列表,将对每个单元格做处理,以单元格分析,若是 CRect 绘画,可通过 PtInRect 点位判断确定,点位可由 OnMouseMove 进行消息捕获,稍加处理便可实现原有要求;

四、附加:

https://learn.microsoft.com/zh-cn/cpp/mfc/reference/ctooltipctrl-class?view=msvc-140