MFC3d立体按钮制作

1、本程序基于前期我的博客文章MFC用CButtonST类实现图片透明按钮(免费源码下载)

2、添加CeXDib.cpp CeXDib.h ShadeButtonST.cpp ShadeButtonST.h到项目文件夹下,和FileView中如图。

3、在ButtonShadeDlg.h中添加代码

cpp 复制代码
#include "ShadeButtonST.h"
#include "BtnST.h"


class CButtonShadeDlg : public CDialog
{
// Construction
public:
	CButtonShadeDlg(CWnd* pParent = NULL);	// standard constructor

// Dialog Data
	//{{AFX_DATA(CButtonShadeDlg)
	enum { IDD = IDD_BUTTONSHADE_DIALOG };
	CButtonST   m_btnPrint;
	CShadeButtonST	m_btnCancel;
	CShadeButtonST	m_btnOK;
	//}}AFX_DATA
...
}

4、在ButtonShadeDlg.cpp中添加代码

cpp 复制代码
void CButtonShadeDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CButtonShadeDlg)
DDX_Control(pDX, IDC_BUTTON1, m_btnPrint);
DDX_Control(pDX, IDCANCEL, m_btnCancel);
DDX_Control(pDX, IDOK, m_btnOK);
	//}}AFX_DATA_MAP
}


BOOL CButtonShadeDlg::OnInitDialog()
{
	CDialog::OnInitDialog();
m_btnPrint.SetIcon(IDI_ICON_Print);    
m_btnPrint.SetAlign(CButtonST::ST_ALIGN_VERT);
	m_btnOK.SetShade(CShadeButtonST::SHS_HARDBUMP);
	m_btnCancel.SetShade(CShadeButtonST::SHS_HARDBUMP);
...
}

运行程序

相关推荐
朝朝辞暮i3 小时前
C++ 第 23 课:class —— 开始真正进入面向对象
开发语言·c++·算法
郑同学的笔记4 小时前
【c++随笔28】strcmp 和 memcmp对比
开发语言·c++
随意起个昵称4 小时前
【背包dp】输出方案路径
c++·动态规划
朝朝辞暮i5 小时前
C++ 第 27 课:智能指针 shared_ptr
开发语言·c++·算法
by209995 小时前
学会使用std::string类,并理解其内部是如何管理字符串的详细阐述(上)
c++·笔记·字符串·类和对象·string
沙漠之主5 小时前
C++编程教学设计资料:从入门到实战的完整课程方案
java·前端·c++
朝朝辞暮i5 小时前
C++ 第 29 课:回调函数 Callback
开发语言·c++·算法
kaixin_learn_qt_ing6 小时前
C++多态实现原理
c++
无名猿6 小时前
unique_ptr 完全指南:独占所有权与零开销
c++·性能优化·内存管理·标准库·现代c++
笑鸿的学习笔记6 小时前
C++笔记之大块顺序写
java·c++·笔记