MFC扩展Dll中,加载CMFCButton问题
在MFC的多文档MDI程序中,每个MDI的子框架,从扩展DLL中加载。这个扩展DLL中,每个View从CFormView继承,其中在FormView中添加了一个CMFCButton按钮,为了改变字体颜色等只能选用CMFCButton。
但在程序加载这个子窗口时,CMFCButton按钮显示不出来,所在区域是CFormView的缺省颜色。调试了一天,观察到几个现象,大家帮忙分析分析。除了这个CMFCButton,其余的Combo/Edit/Check/Radio/Gropubox等控件都能正常显示。
1、用Spy++,能够看到这个CMFCButton对应的窗口,用Spy让它突出显示时,对应的区域有黑框闪烁。
2、在对应的CMFCButton区域,用鼠标点击,能够相应对应的按钮事件。虽然看不到按钮。
3、在按钮事件中,或者Form View的其它地方,用资源ID去调用(CMFCButton*)GetDlgItem(IDC_MFCBUTTON_ID); 能够返回按钮指针,并且该指针ASSERT_VALID有效。
4、在afxbutton.cpp中,设置对应的OnDraw等绘制函数,没有调用。
5、写了另一个插件的扩展MFC Dll,从CDialogEx集成一个窗体,里面放置一个CMFCButton,可以正常显示,对应的afxbutton.cpp中的相应OnDraw等绘图函数能够调用。
大家帮我判断一下,可能哪里出现了问题?