怎样改变控件的字体和颜色? 同上 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 大虾们帮忙一本书上说控件也是窗口所以可以调用CWnd::SetFont()现在对话框的.h里定义一个变量private : Cfont m_font;但是编译出错 不认Cfont型,也就是控件没有继承CWnd但是添加一个父类CWnd却又出错说已经基于CDilog类了这是怎末回事?!?!? 哦,是吗?我再瞧瞧还有更改颜色我就家了着末一句代码就不行了HBRUSH CCrlDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if (nCtlColor= = CTLCOLOR_EDIT ) pDC —> SetTextColor (RGB (255, 0 , 0 , ) ) return hbr;}一编译就没信儿了什末东西也不出关也关不了一关就说正在编译不能关 HBRUSH CSYJDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH B = CreateSolidBrush(RGB(0,0,0)); //COLOR是你想设置的颜色 switch (nCtlColor) { // case CTLCOLOR_EDIT:// case CTLCOLOR_MSGBOX:// case CTLCOLOR_DLG : case CTLCOLOR_EDIT : //在此加入你想要改变背景色的控件消息 return (HBRUSH) B; default: //其他控件设置自己默认的颜色和背景刷. return CDialog::OnCtlColor(pDC, pWnd, nCtlColor); }} HBRUSH CgameDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor){ HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: 在此更改 DC 的任何属性 pDC->SetBkColor(RGB(255,128,0)); return ::CreateSolidBrush(RGB(255,128,0));}SetBkColor()与HBrush同样颜色 谢谢lemon:)但是按钮的颜色怎末设呀?字体,我想对控件单独设置有人指点是这样先在头文件里定义CFont m_font然后在BOOL CContrlDlg::OnInitDialog(){(82) m_font . CreateFont (MulDiv (8 , -pDC—GceCapsLOGPIXELSY) ,72). 0 , 0 , 0 ,(83) FW_NORMAL ,0 ,0,0, ANSI_CHARSER, OUT_STROKE_PRECIS ,(84) CLIP_STROKE _PRECIS , DRAFT _QUALITY(85) VARIABLE_PITCH |FF_SWISS, _T("Arial") ); m_wndButton . SetFont (&m _font );}但是编译出错说pDC没定义我就在前面加了一句 CDC* pDC=GetDC();但还是有错如下:F:\Vc\EX_color\ContrlDlg.cpp(82) : error C2143: syntax error : missing ')' before 'constant'F:\Vc\EX_color\ContrlDlg.cpp(82) : error C2660: 'CreateFontA' : function does not take 1 parametersF:\Vc\EX_color\ContrlDlg.cpp(85) : error C2059: syntax error : ')'大虾再给看一下:) Tab 消息发送 一个关于NT服务程序的问题,巨奇怪!! 怎么删除不了这个注册表项?? 请教高手一个关于不规则区域内外点判断算法的问题. 如何让打印居中 请问在CFileDlg类中如何使文件“查找范围”在“网络邻居”上? ADO怎样访问二进制文件? 接着问,线程问题 我听说vc以后要逐渐转向ATL,不用MFC,是不是真的 intranet and internet (TCPIP) 各位老大深圳哪可以买到无线调制解调器(GPRS调制解调器)? 如何在c/c++中访问一个dbf文件?
一本书上说控件也是窗口所以可以调用CWnd::SetFont()
现在对话框的.h里定义一个变量
private : Cfont m_font;
但是编译出错 不认Cfont型,也就是控件没有继承CWnd
但是添加一个父类CWnd却又出错说已经基于CDilog类了这是怎末回事?!?!?
还有更改颜色
我就家了着末一句代码就不行了
HBRUSH CCrlDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (nCtlColor= = CTLCOLOR_EDIT )
pDC —> SetTextColor (RGB (255, 0 , 0 , ) ) return hbr;
}
一编译就没信儿了
什末东西也不出
关也关不了
一关就说正在编译不能关
{
HBRUSH B = CreateSolidBrush(RGB(0,0,0)); //COLOR是你想设置的颜色 switch (nCtlColor)
{
// case CTLCOLOR_EDIT:
// case CTLCOLOR_MSGBOX:
// case CTLCOLOR_DLG :
case CTLCOLOR_EDIT : //在此加入你想要改变背景色的控件消息 return (HBRUSH) B;
default: //其他控件设置自己默认的颜色和背景刷.
return CDialog::OnCtlColor(pDC, pWnd, nCtlColor); }
}
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: 在此更改 DC 的任何属性
pDC->SetBkColor(RGB(255,128,0));
return ::CreateSolidBrush(RGB(255,128,0));
}SetBkColor()与HBrush同样颜色
但是按钮的颜色怎末设呀?字体,我想对控件单独设置
有人指点是这样
先在头文件里定义CFont m_font然后在
BOOL CContrlDlg::OnInitDialog()
{
(82) m_font . CreateFont (MulDiv (8 , -pDC—GceCapsLOGPIXELSY) ,72). 0 , 0 , 0 ,
(83) FW_NORMAL ,0 ,0,0, ANSI_CHARSER, OUT_STROKE_PRECIS ,
(84) CLIP_STROKE _PRECIS , DRAFT _QUALITY
(85) VARIABLE_PITCH |FF_SWISS, _T("Arial") );
m_wndButton . SetFont (&m _font );
}
但是编译出错
说pDC没定义
我就在前面加了一句 CDC* pDC=GetDC();
但还是有错如下:F:\Vc\EX_color\ContrlDlg.cpp(82) : error C2143: syntax error : missing ')' before 'constant'
F:\Vc\EX_color\ContrlDlg.cpp(82) : error C2660: 'CreateFontA' : function does not take 1 parameters
F:\Vc\EX_color\ContrlDlg.cpp(85) : error C2059: syntax error : ')'大虾再给看一下:)