MFC中如何设置Dialog(对话框)标题栏中文字的颜色

 我来答
icelbja
推荐于2017-10-14 · TA获得超过138个赞
知道小有建树答主
回答量:180
采纳率:100%
帮助的人:151万
展开全部
标题栏文字颜色肯定是不能设置的,而且标题栏都样式都不能用代码改变,标题栏是系统设定的同样的程序在xp,win7里运行的样式是不一样的,这个你没法控制。但是你可以不用对话框提供的标题栏,而在对话框的客户区“虚拟”一个标题栏。
追问
那如果我要改变对话框标题字体颜色,如何在对话框的客户区“虚拟”一个标题栏?有参考代码吗?
追答
把对话框的border属性设为none就不会出现标题栏,你可以拖一个按钮(位图)放在右上角模仿标题栏的关闭按钮。还可给虚拟的标题栏背景使他更真实。把下面是绘制标题的代码需要放在OnPaint()里:
CDC* pDC=GetDC();
CFont font;
font.CreateFont(25,
0,
0,
0,
FW_BLACK,
TRUE,
TRUE,
0,
ANSI_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
DEFAULT_PITCH | FF_SWISS,
_T("隶体"));

pDC->SelectObject(&font);
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(0, 0, 0));
pDC->TextOut(10,10,"标题");
pDC->DeleteDC();
veket的小号
2013-12-02 · TA获得超过3371个赞
知道大有可为答主
回答量:3762
采纳率:0%
帮助的人:3967万
展开全部
楼上正解 这个要 CDC绘图 + TextOut/DrawText来解决
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式