在 MFC(Microsoft Foundation Classes)中,似乎没有直接提供名为 NormalizeHit 的 CRectTracker 公共方法。请注意,MFC 版本可能有所不同,而该方法可能在某个特定版本的 MFC 中被引入。

如果你需要 "normalize"(标准化)矩形跟踪器的边界或手柄,通常可以通过以下步骤实现:

1. 使用 HitTest 方法确定当前操作的手柄或位置。
2. 根据 HitTest 的结果,调整矩形的边界或手柄。

以下是一个简化的示例:
CRectTracker tracker;  // 创建一个矩形跟踪器对象
CPoint point(20, 30);  // 假设是某个点的坐标

int nHitTest = tracker.HitTest(point);

// 根据 HitTest 的结果进行相应的标准化处理
if (nHitTest == CRectTracker::hitTopLeft) {
    // 处理左上角手柄的标准化操作
    tracker.NormalizeTopLeft();
}
else if (nHitTest == CRectTracker::hitBottomRight) {
    // 处理右下角手柄的标准化操作
    tracker.NormalizeBottomRight();
}

// 现在矩形跟踪器已经被标准化

在这个例子中,首先使用 HitTest 方法确定操作的手柄或位置,然后根据结果调用相应的标准化方法(例如 NormalizeTopLeft 或 NormalizeBottomRight)。这些标准化方法将确保矩形跟踪器的状态得到适当的调整。

如果 NormalizeHit 或类似方法在你的 MFC 版本中可用,你可以查阅相关的 MFC 文档或头文件以获取详细信息。


转载请注明出处:http://www.pingtaimeng.com/article/detail/22096/MFC/CRectTracker