MFC绘制按钮OnDraw的使用 100

求一个CMFCToolBarComboBoxButton::OnDraw的使用里面有个CDC不会用,请老师贴个代码案例... 求一个CMFCToolBarComboBoxButton::OnDraw的使用
里面有个CDC不会用,请老师贴个代码案例
展开
 我来答
归悦欣cf
2014-02-20 · TA获得超过1444个赞
知道大有可为答主
回答量:4250
采纳率:59%
帮助的人:1333万
展开全部
可以是CDC对象的函数进行绘图,在MFC下使用GDI函数,可以通过CDC对象来调用
追问

我只想让这个工具栏好看一点而已,让文本标签在左边而不是下边

追答
如果工具栏里面的是在OnDraw函数里绘制出来,只要修改里面的代码就行,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
微测检测5.10
2023-05-10 广告
您好!建议咨 深圳市微测检测有限公司,已建立起十余个专业实验室,企业通过微测检测就可以获得一站式的测试与认 证解决方案;(EMC、RF、MFi、BQB、QI、USB、安全、锂电池、快充、汽车电子EMC、汽车手机互 联、语音通话质量),认证遇... 点击进入详情页
本回答由微测检测5.10提供
任明星Ming
2014-02-19 · TA获得超过798个赞
知道小有建树答主
回答量:1061
采纳率:100%
帮助的人:1151万
展开全部

这里有个国外标准的button例子,你可以参考下CDC的用法。


更多追问追答
追问

这个例子我看了,不是我想要的,

我只想让这个工具栏好看一点而已,让文本标签在左边而不是下边

追答

这里有个自定义工具栏的,可以加下拉列表和按钮。要调整位置,就自己改下。CReBar也能帮你实现位置在左边的效果。


已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-02-20
展开全部
对于OnDraw()
This method is called by the framework to render an image of the document. The framework calls this method to perform screen display, printing, and print preview, and it passes a different device context in each case. There is no default implementation.

///CView默认的标准的重画函数
void CView::OnPaint() //见VIEWCORE.CPP
{
CPaintDC dc(this);
OnPrepareDC(&dc);
OnDraw(&dc); //调用了OnDraw
}
///CView默认的标准的OnPrint函数
void CView::OnPrint(CDC* pDC, CPrintInfo*)
{
ASSERT_VALID(pDC);
OnDraw(pDC); // Call Draw
}
既然OnPaint最后也要调用OnDraw,因此我们一般会在OnDraw函数中进行绘制。下面是一个典型的程序。
///视图中的绘图代码首先检索指向文档的指针,然后通过DC进行绘图调用。
void CMyView::OnDraw( CDC* pDC )
{
CMyDoc* pDoc = GetDocument();
CString s = pDoc->GetData();
GetClientRect( &rect ); // Returns a CString CRect rect;
pDC->SetTextAlign( TA_BASELINE | TA_CENTER );
pDC->TextOut( rect.right / 2, rect.bottom / 2, s, s.GetLength() );
}
最后:现在大家明白这哥俩之间的关系了吧。因此我们一般用OnPaint维护窗口的客户区(例如我们的窗口客户区加一个背景图片),用OnDraw维护视图的客户区(例如我们通过鼠标在视图中画图)。当然你也可以不按照上面规律来,只要达到目的并且没有问题,怎么干都成。补充:我们还可以利用Invalidate(),ValidateRgn(),ValidateRect()函数强制的重画窗口,具体的请参考MSDN吧。
追问

我只想要一个这样的工具栏

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式