CListCtrl 扩展风格设置方法—SetExtendedStyle和ModifyStyleEx

2022-09-09 10:42:08 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

想把ListCtr设置为整行高亮显示 错误的方法为:

代码语言:javascript复制
1 clistctrl.ModifyStyleEx(0,LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);

正确的方法为:

代码语言:javascript复制
1 DWORD dwStyle = clistctrl.GetExtendedStyle();   
2 dwStyle |= LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES; 
3 clistctrl.SetExtendedStyle(dwStyle);   

那么,ModifyStyleEx和SetExtendedStyle区别在哪里?

实际上,ModifyStyleEx只是对窗口的GWL_EXSTYLE属性作设定,也即只是对窗口的扩展属性作设定,这种属性以WS_EX_作为前缀,比如WS_EX_CLIENTEDGE,

在listctrl 控件中,它的扩展风格的值并没有存入窗口的GWL_EXSTYLE属性值中,而是通过发送LVM_SETEXTENDLISTVIEWSTYLE消息给listctrl控件来实现,因此它就不能通过ModifyStyleEx做设定,只能通过SetExtendedStyle进行设定。

转载于:https://www.cnblogs.com/luzhiyuan/p/3883721.html

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/161692.html原文链接:https://javaforall.cn

0 人点赞