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

 

posted @ 2018-06-11 17:31  小雨滴答  阅读(3351)  评论(1编辑  收藏  举报