在 MFC 的 CListCtrl 类中,确实存在名为 GetItemRect 的公共方法,该方法用于获取指定项的矩形区域。以下是 GetItemRect 方法的声明:
BOOL GetItemRect(int nItem, LPRECT lpRect, UINT nCode) const;

这个方法接受三个参数:

  •  nItem:项的索引。

  •  lpRect:指向接收矩形区域的 RECT 结构体的指针。

  •  nCode:用于指定矩形区域的类型,通常为 LVIR_BOUNDS、LVIR_ICON 等。


以下是一个示例:
CListCtrl myListCtrl;
int itemIndex = 2; // 假设你要获取第三项的矩形区域

RECT itemRect;
if (myListCtrl.GetItemRect(itemIndex, &itemRect, LVIR_BOUNDS))
{
    // itemRect 中包含了指定项的矩形区域信息
}
else
{
    // 获取失败
}

在这个示例中,itemRect 变量将包含第三项的矩形区域信息。如果返回值为 TRUE,表示获取成功,否则为失败。

请注意,GetItemRect 方法用于获取指定项的矩形区域,而不是位置。如果你需要获取指定项的位置,可以使用 GetItemPosition 方法。


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