| 发表于:2007-02-07 17:21:3112楼 得分:20 |
本来不打算回答的, 看来大家讨论的比较热烈, 出来凑个数. 自绘控件不一定非要在wm_ctlcolorbtn等消息中进行. 其实最好的办法是直接处理wm_paint消息, wm_paint消息基本上控件绘制的最高控制权, 它只影响控件的外观, 而不影响控件的行为. wm_paint消息不需要设置owner-draw风格(这个风格很讨厌, 设置了它之后, 像checkbox或radiobutton之类的按钮的选中状态将由程序员自己维护, 也就是说, 按下他们后, 你用cbutton::getcheck来取它的状态, 永远是未选中状态), 你可以自由的在其中绘制控件的外观, 甚至贴图上去, 改个颜色就更简单了. | | |
|