也谈VC中ModifyStyle&ModifyStyleEx无法改变控件的Style)
来源:互联网 发布:淘宝申请介入会退款吗 编辑:程序博客网 时间:2024/05/17 15:57
一个View中用到了一个CListCtrl,在OnInitialUpdate函数里面他调用了m_listCtrl.ModifyStyleEx(0, LVS_EX_FULLROWSELECT);但是结果是并没有改变View中这个ListCtrl的效果。
仔细的查阅了MSDN的关于ModifyStyleEx的说明,发现没什么可以的地方,调试几遍发现也没异常,最后在网上一搜索ModifyStyleEx,结果发现碰到这个问题的朋友还真不少,有一遍关于ModifyStyle和ModifyStyleEx无法改变样式的解决方法的文章被转载得到处都是,不仅感慨现在的互联网信息重复程度~~结果看完文章很失望,他完全是重新Create了一个控件。
最后经过努力,发现使用SetExtendStyle函数就可以实现改变Style的功能。
m_List.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP | LVS_EX_MULTIWORKAREAS);
有一点是可以肯定地,如果你重构一个控件继承自CListCtrl,那么你可以在该控件的OnCreate中使用ModifyStyle或者ModifyStyleEx,这都是可以达到目的的,但是如果控件的一个实例是另一个窗口的成员变量,那么你在这个窗口的初始化函数中调用该控件的ModifyStyle或者ModifyStyleEx是不能达到目的的,有些关联的一个说明是SetWindowLong会因为控件和调用者不在同一进程而失败(ModifyStyle和ModifyStyleEx函数中有调用SetWindowLong).
0 0
- 也谈VC中ModifyStyle&ModifyStyleEx无法改变控件的Style)
- 关于ModifyStyle或ModifyStyleEx无法改变控件属性的解决方法
- 关于ModifyStyle ModifyStyleEx修改自定义控件的问题
- ModifyStyle, ModifyStyleEx
- GetStyle,ModifyStyle,GetExStyle,ModifyStyleEx
- VC中如何改变对框中控件的颜色
- VC中如何改变对话框中控件的颜色
- VC中如何改变对框中控件的颜色
- VC中如何改变对框中控件的颜色
- vc改变控件的位置
- 如何在VC中改变控件的背景色
- 如何改变VC中控件间的TAB切换顺序
- VC中改变窗体及控件的颜色
- VC改变对话框中所有控件的字体
- 如何改变vc界面中控件的tab顺序
- 如何在VC中改变控件的背景色
- 无法改变想法的人,什么事情也改变不了
- vc中如何改变控件大小
- 线程的同步异步,以及具体代码实现,使用场景
- VMwareTools安装及出现kernel header path的解决方法
- ISA2006如何用SQL来记录日志?
- 关于application/x-www-form-urlencoded编码
- CAS——手写第一步:HTML控件与Web服务器控件
- 也谈VC中ModifyStyle&ModifyStyleEx无法改变控件的Style)
- 裸机驱动模板
- vc6.0在win8或8.1下“打开文件”功能不用用的解决办法
- 万网企业邮箱拒信常规问题对照表
- UVa 1394 - And Then There Was One(约瑟夫数论)
- 桥 Gym100712H Bridges
- SORBS的DUHL申诉移除过程图解
- ZOJ1709/POJ1562 油田问题/搜索/DFS
- poj解题报告——1579