读书人

动态添加自绘控件解决方案

发布时间: 2012-02-28 13:06:36 作者: rapoo

动态添加自绘控件
我自己绘制了一个按钮控件,继承自CButton类,可以实现鼠标移上、获得焦点、按下和普通不同情况的不同形态。
用资源编辑器拖到对话框上然后添加MyButton类的变量可以实现以上各种功能。
但是如果用代码动态添加的话就不行了。
MyButton *d = new MyButton();//这是继承的类,不能实现点击动作,不是响应事件,而是根本就不能点击
CButton *d = new CButton();//这是MFC的类,可以实现按钮动作,可以点击
TCHAR ca[3];
_itow(i,ca,10);
RECT rect;
rect.top = 10*(i/10+1)+i/10*50;
rect.left=i%10*50;
rect.bottom = rect.top+60;
rect.right = rect.left+50;
d->Create(ca,WS_CHILD|WS_VISIBLE|WS_TABSTOP|BS_PUSHBUTTON,rect,this,WM_USER+i);
d->ShowWindow(SW_SHOW);
d->UpdateWindow();
望各位大侠指教啊!

[解决办法]
WM_USER+i对不对?与资源编辑器拖到对话框上的比较,
响应函数要用到这些ID

读书人网 >VC/MFC

热点推荐