在 MFC 中,CMFCToolBar::HitTest 是 CMFCToolBar 类的一个公共方法。这个方法用于根据指定的屏幕坐标,判断该坐标是否命中工具栏的某个按钮。

方法原型如下:
int CMFCToolBar::HitTest(
   const CPoint& point,
   TOOLBAR_HITTEST_TYPE* pHitTest
) const;

  •  point 参数是要测试的屏幕坐标。

  •  pHitTest 参数是一个可选的指针,如果传递了该参数,方法会将点击位置的信息保存在这个参数中。


方法返回值是点击位置对应的工具栏按钮的索引。如果点击位置不在任何按钮上,则返回 -1。

示例代码:
CPoint ptMouse;  // 鼠标点击位置
TOOLBAR_HITTEST_TYPE hitTestType;  // 可选,用于保存点击位置信息

int nIndex = toolBar.HitTest(ptMouse, &hitTestType);

if (nIndex != -1)
{
    // 按钮被点击,可以根据需要处理
    // nIndex 是按钮的索引,hitTestType 包含了更多信息
}

这个方法通常用于处理工具栏按钮的点击事件。


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