15,977
社区成员
发帖
与我相关
我的任务
分享
[/quote]
在初始化ListCtrl之前,改变大小。还是不行就看看OnDraw函数。“要鼠标移动到list所在的地方list才会显示出来”这句话说明重绘问题[/quote]
我把我自己重载的这个CListCtrl类放到另外一个工程,且用了同样的方式去改变大小,最终他大小变了,信息也显示出来了。可我就是不知道在现在这工程里面哪里出了问题,真纠结呀[/quote]
发现了,发现了,我终于发现问题了!!!
我就犯了一个最二的错误,我自己在重载CListCtrl的时候加了一个设置行高的功能,代码如下:
void CFriendList::MeasureItem(LPMEASUREITEMSTRUCT lpMeasureItemStruct)
{
lpMeasureItemStruct->itemHeight = m_nItemHeight;
}
可是我竟然没有给m_nItemHeight初始化,导致m_nItemHeight的不确定性,所以在DrawItem的时候数据就会不对,从而导致信息无法显示,真蛋疼,以后再也不能这么粗心了;
"孤独的和弦 "哥们谢谢你,真的很感谢你,谢谢你一直帮我解答
[/quote]
在初始化ListCtrl之前,改变大小。还是不行就看看OnDraw函数。“要鼠标移动到list所在的地方list才会显示出来”这句话说明重绘问题[/quote]
我把我自己重载的这个CListCtrl类放到另外一个工程,且用了同样的方式去改变大小,最终他大小变了,信息也显示出来了。可我就是不知道在现在这工程里面哪里出了问题,真纠结呀[/quote]
mfc是这样,牵一发动全身
[/quote]
在初始化ListCtrl之前,改变大小。还是不行就看看OnDraw函数。“要鼠标移动到list所在的地方list才会显示出来”这句话说明重绘问题[/quote]
我把我自己重载的这个CListCtrl类放到另外一个工程,且用了同样的方式去改变大小,最终他大小变了,信息也显示出来了。可我就是不知道在现在这工程里面哪里出了问题,真纠结呀
[/quote]
在初始化ListCtrl之前,改变大小。还是不行就看看OnDraw函数。“要鼠标移动到list所在的地方list才会显示出来”这句话说明重绘问题
SetWindowLong(m_list.m_hWnd, GWL_EXSTYLE, WS_EX_CLIENTEDGE);
m_list.SetExtendedStyle(LVS_EX_GRIDLINES);
::SendMessage(m_list.m_hWnd, LVM_SETEXTENDEDLISTVIEWSTYLE, LVS_EX_FULLROWSELECT, LVS_EX_FULLROWSELECT);
// 看看设置风格是否需要修改
另外试试MoveWindow替代SetWindowPos