返回信息流单文档结构的CMyView类中有个CMyButton类的公有变量m_btn,CMyButton是个自绘的圆形按钮类,但是在调用CMyButton::DrawItem(CDC*pDC)之前,就已经在圆形按钮的地方画了一个方形,导致背景被这个方形覆盖了
我希望在调用DrawItem()之前不要系统自动提前画那个方形,问题出在哪里?
是不是系统在传给CMyButton::DrawItem函数pDC之前预先对这个DC做了一些默认的处理?但是如果不是单文档结构,而是简单的对话框,就不会自动提前画那个默认的方形
这是一条镜像帖。来源:北邮人论坛 / cpp / #36153同步于 2010/2/27
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
有个自绘按钮的问题,希望大虾帮帮忙
yangshi980
2010/2/27镜像同步10 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
【 在 KevenStar 的大作中提到: 】
: 在CMyView中主动初始化CMyButton实例,并且在需要的时候主动调用OnDraw等绘制函数
构造函数使自定义的,OnDraw是系统调用的,因为button的父窗口是view,所以view自动绘制button,如果我再调用还是一个效果..
【 在 yangshi980 的大作中提到: 】
: 构造函数使自定义的,OnDraw是系统调用的,因为button的父窗口是view,所以view自动绘制button,如果我再调用还是一个效果..
可以这样啊
在CView里面声明 一个CButton的指针 如 CButton *cbTest = NULL;
然后再 CView 想显示的时候 再 cbTest = new CButton(); cbTest->OnDraw();