MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致

时间:2024-05-05 11:35:50

1、在对话框添加Picture Contrl 控件

MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致

2、选中控件,修改ID为IDC_STATIC_PICTURE 和 Type属性为icon MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致其图标改为MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致

3、添加变量m_pictureMFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致变量名是灰色,说明我这里已经添加过

4、定义一个HICON 句柄MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致

并在构造函数中载入icon图标资源,(此处用的是编译系统自带的IDR_MAINFRAME图标MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致

构造函数MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致,两句代码功能一样,为了熟悉写了两遍

5、在OnInitDialog()函数中添加m_picture.SetIcon(m_hIcon2);

MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致

6、编译运行

MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致

但是图标的背景与对话框背景不同

有一种方法可以同时改变图标的背景和对话框的背景完全一致

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、编译运行

MFC在对话框中的Picture contrl控件中添加icon图标,并改变icon图标的背景色与对话框背景色一致