第一次我在ComboBoxEx的派生类的onpaint里重绘了下拉区,编译运行后还是系统自带样式,同样方法的我自绘combobox就没问题。
第二次我在OnCtlColor里子类化edit,编译运行后还是系统自带样式,同样方法的我自绘combobox就没问题。
第三次我在OnDrawItem里自画下拉按钮,编译运行后,不显示,点下拉按钮,在listbox里显示了,说明
OnDrawItem画的是listbox的项。
请问,ComboBoxEx的父类是combobox,为什么combobox可以自绘编辑框和下拉区,ComboBoxEx却不能?究竟怎样才能自绘编辑框和下拉区????
谁能解决??
下面这个帖子的分也是你的。
http://topic.csdn.net/u/20111230/11/705a28da-43d0-4d2f-bceb-ed52577df640.html

解决方案 »

  1.   

    有什么不行的?有钱吗?我可以帮你创建一个CComboBoxExExExEx...都行!
      

  2.   

    既然你用CComboBox能实现CComboBoxEx的样式,干嘛一定非要自绘CComboBoxEx?
      

  3.   

    ComboBoxEx本身就是对ComboBox重绘而来的,所以你不能对ComboBoxEx进行ownerdraw,你要重绘只能去搞ComboBox。
    ComboBoxEx只支持以下风格:
    •CBS_SIMPLE 
    •CBS_DROPDOWN 
    •CBS_DROPDOWNLIST 
    •WS_CHILD 
    不支持CBS_OWNERDRAWFIXED / CBS_OWNERDRAWVARIABLE两种重绘风格。如果你硬是加上CBS_OWNERDRAWFIXED风格,那么你就是画蛇添足,正确的做法是对ComboBox重绘。这些东西只要你自己仔细看看MSDN就可以避免的,我本来就是想引诱你多点折腾,可能你动手写代码的时间太少了。手冻,不写了。有意见可以向本人喷,接受。