MFC中如何设置Dialog(对话框)标题栏中文字的颜色
2个回答
展开全部
标题栏文字颜色肯定是不能设置的,而且标题栏都样式都不能用代码改变,标题栏是系统设定的同样的程序在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();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询