接手同事售后软件的工具开发项目,因为UI设计问题,稍接触了一下Button重绘。
项目第一个问题是debug模式会报断言错误,release模式是正常的。询同事得知,知道debug模式有问题,所以一只都在release模式下下断点……
一步步加断点,debug发现是在WM_DRAWITEM消息的实现部分OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct )出现断言错误。
看代码没发现特别的异常,但把所有按钮的【Owner Draw】属性改为false后就不会再出现断言错误。