对于窗体自绘,在它的onpaint函数中进行实现,对于控件的自绘,会有一个DrawItem消息,它会调用控件的DrawItem函数进行绘制。
所有需要自绘的控件,首先设置它的属性,Owner Draw为true

用按钮控件作为例子,有两种方法实现自绘,第一种是在窗体的OnDrawItem函数中实现
首先对于窗体资源,属性中,找到它的消息列表,找到WM_DRAWITEM,添加它的OnDrawItem响应函数

void CTestOwnDrawDlg::OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值