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);
...
}

运行程序

相关推荐
会周易的程序员2 小时前
microLog 后端开发指南
开发语言·c++·物联网·设计模式·日志·iot·aiot
汉克老师2 小时前
GESP2026年6月认证C++二级( 第三部分编程题(2、菱形))精讲
c++·找规律·绘制图形·对角线·双重循环
☆cwlulu3 小时前
try-throw-catch异常捕获流程
开发语言·c++
王老师青少年编程3 小时前
2026年6月GESP真题及题解(C++五级):排排坐
c++·题解·真题·gesp·五级·2026年6月·排排坐
郝学胜-神的一滴3 小时前
Qt 高级编程 034:深耕QWidget底层内核—彻底吃透无边框窗口设计核心原理
开发语言·c++·qt·程序人生·软件开发·用户界面
不会写代码的ys3 小时前
C++复习篇
java·开发语言·c++
aichitang20244 小时前
数论变换(NTT)
c++·算法·fft·ntt
_olone4 小时前
AtCoder Beginner Contest 465 D - X to Y
c++·算法
星夜夏空994 小时前
C++学习(3) —— C++输入输出流
c++·学习
CAU界编程小白4 小时前
CAU抢课脚本
c++·脚本