枫叶文学网www.fywxw.com
Visual C++ 6.0 程序设计从入门到精通
·102·
表5-3 CStatic 类的主要成员函数
成员函数声明 用途
HBITMAP SetBitmap(HBITMAP hBitmap); 指定要显示的位图
HBITMAP GetBitmap() const; 获取由SetBitmap 指定的位图
HICON SetIcon(HICON hIcon); 指定要显示的图标
HICON GetIcon() const; 获取由SetIcon 指定的图标
HCURSOR SetCursor(HCURSOR hCursor); 指定要显示的光标图片
CURSOR GetCursor(); 获取由SetCursor 指定的光标
HENHMETAFILE
SetEnhMetaFile(HENHMETAFILE hMetaFile);
指定要显示的增强图元文件
HENHMETAFILE GetEnhMetaFile() const; 获取由SetEnhMetaFile 指定的图元文件
技巧:设置静态文本框的背景色和文本颜色
Windows 消息WM_CTLCOLOR 用于控制对话框中控件的颜色,可以有选择xìng地设置静态
文本框控件的背景和颜色,如下面的代码段用于更改ID 为IDC_SMALL_STATIC 的静态文
本框的颜色和背景。
HBRUSH CRMBDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
switch(nCtlColor)
{
case CTLCOLOR_STATIC:
{
if(pWnd->GetDlgCtrlID() == IDC_SMALL_STATIC)
{
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(10,10,255));
hbr = (HBRUSH)GetStockObject(HOLLOW_BRUSH);
}
else
{
hbr = CDialog::OnCtlColor(pDC,pWnd,nCtlColor);
}
}
break;
default:
break;
}
// TODO: Return a different brush if the default is not desired
return hbr;
枫叶文学网www.fywxw.com
第5 章 常用控件
·103·
}