MFC CListCtrl控件表头锁定方法
实现CListCtrl控件表头锁定功能,可以使用自定义派生类的方式拦截WM_HSCROLL和WM_VSCROLL消息,并在消息处理函数中根据滚动条位置调整表头位置,确保表头始终保持可见。
以下是一个简单的代码示例:
void CMyListCtrl::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
// 获取表头控件
CHeaderCtrl* pHeader = GetHeaderCtrl();
// 获取滚动条位置
int nScrollPos = GetScrollPos(SB_HORZ);
// 设置表头位置
pHeader->SetWindowPos(NULL, nScrollPos, 0, 0, 0, SWP_NOSIZE | SWP_NOZORDER);
// 调用基类消息处理函数
CListCtrl::OnHScroll(nSBCode, nPos, pScrollBar);
}
注意:
- 需要将CListCtrl控件的属性设置为“Report”视图模式。
- 需要将CListCtrl控件的水平滚动条设置为可见。
1.94MB
文件大小:
评论区