在 MFC 的 CToolBarCtrl 类中,确实有一个名为 CToolBarCtrl::HitTest 的公共方法,用于确定在给定坐标下的工具栏按钮索引。

以下是 CToolBarCtrl::HitTest 方法的简要说明:
int HitTest(const CPoint& point, UINT* pFlags = nullptr) const;

参数:
  •  point:一个 CPoint 对象,表示要检查的坐标。

  •  pFlags:(可选)一个指向 UINT 的指针,用于接收有关命中测试的其他信息。


返回值:
  •  如果命中了工具栏按钮,则返回该按钮的索引。

  •  如果未命中任何按钮,则返回 -1。


示例代码:
CPoint pt; // 假设这是要测试的坐标
int nIndex = m_ToolBarCtrl.HitTest(pt);
if (nIndex != -1) {
    // 命中了工具栏按钮,nIndex 包含了按钮的索引
} else {
    // 未命中任何按钮
}

这个方法可以用于确定在给定坐标下是否存在工具栏按钮,并获取按钮的索引。


转载请注明出处:http://www.zyzy.cn/article/detail/22707/MFC/CToolBarCtrl