MFC中在CMyView头文件里面定义了个CButton button,然后在OnDraw里面使用了Create创建了个按钮

MFC中在CMyView头文件里面定义了个CButton button,然后在OnDraw里面使用了Create创建了个按钮,第1张

不要在OnDraw里面直接创建,因为OnDraw你看名字就知道了:画,就是说当你改变窗口大小,缩小,放大,移动窗口,这些 *** 作都要把慧高窗口重新绘画一遍,意思是每动一下就要画一下

第一次动[OnDraw]是创建窗口的时候,当时按钮还不存在所以正常显示

第二次动[OnDraw]的时候就是移动窗口之类的 *** 作,这时候按钮已经被第一次返蚂动[OnDraw]创建了,就不能再创建了就出错了,比如你吃个苹果,你10分钟前已经吃完了,10分钟之后再想吃一次苹果但苹果已经被吃完了,就出错了。

解决方案:

1.在OnDraw创建按钮的时候判断一下,如果已经创建漏碧埋了就不创建了 这样就不会出错

2.重载一个OnInitialUpdate函数,在里面写按钮的创建代码

我也是在6.0下面做程序的,关联时有两点,找到你要关联的按钮所属的对话框类的代码:

1,在你需要关联的按钮所属的对话框类前面包含新的弯迹按钮类的头文件是可以直接找到并关联的。

2,掘数如果没有的话可以包含头文件后把CButton类直接改成新的CNewButton类。

如果还有什么问题可以检查关联的代码的位置,检查关联是否正确

平时做判闹首6.0程序我就是这样做的,希望能给你一点帮助


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12261484.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存