MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致
1、在对话框添加Picture Contrl 控件
2、选中控件,修改ID为IDC_STATIC_PICTURE 和 Type属性为icon 其图标改为
3、添加变量m_picture变量名是灰色,说明我这里已经添加过
4、定义一个HICON 句柄
并在构造函数中载入icon图标资源,(此处用的是编译系统自带的IDR_MAINFRAME图标)
构造函数,两句代码功能一样,为了熟悉写了两遍
5、在OnInitDialog()函数中添加m_picture.SetIcon(m_hIcon2);
6、编译运行
但是图标的背景与对话框背景不同
有一种方法可以同时改变图标的背景和对话框的背景完全一致
1、定义一个画刷
CBrush m_brush;
2、在构造函数中指定画刷的颜色
m_brush.CreateSolidBrush(RGB(244,247,252));
3、添加OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)函数
HBRUSH CTOOLDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: 在此更改 DC 的任何属性 // TODO: 如果默认的不是所需画笔,则返回另一个画笔 return m_brush; }
4、编译运行