整理贴 : 本文结尾提供的代码(ImageButton.h ImageButton.cpp)有bug欢迎回复,网上找的,已修复部分BUG!!!
本文提供3种ICO显示 满足同时显示图标和文字,至于ICO的来源,可以选择在线png转ico,或者找个绿色工具
-
MFC窗口左上角
在资源视图中点击 添加资源
选择 Icon 点击 导入(M)
注意观察一下
BOOL Chart::OnInitDialog()
{
CDialogEx::OnInitDialog();
// TODO: 在此添加额外的初始化
//禁用关闭按钮
::EnableMenuItem(::GetSystemMenu(this->m_hWnd, false), SC_CLOSE, MF_BYCOMMAND | MF_GRAYED);
//******************************
HICON hIcon1;
hIcon1 = AfxGetApp()->LoadIcon(IDI_ICON1);
SetIcon(hIcon1, TRUE);
//******************************
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
实现文件中添加,如上位置
HICON hIcon1;
hIcon1 = AfxGetApp()->LoadIcon(IDI_ICON1);
SetIcon(hIcon1, TRUE);
-
MFC CTabCtrl Tab控件
#pragma once
// Chart 对话框
class Chart : public CDialogEx
{
DECLARE_DYNAMIC(Chart)
public:
Chart(CWnd* pParent = NULL); // 标准构造函数
virtual ~Chart();
// 对话框数据
enum { IDD = IDD_CHART1};
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
DECLARE_MESSAGE_MAP()
public:
virtual BOOL OnInitDialog();
CTabCtrl m_tab;
//*****************************