MFC自绘button
MFC自绘button
MFC自绘Button按钮分析和实现
https://blog.csdn.net/c_base_jin/article/details/53726209
参考书籍
Visual C++图形用户界面开发指南
李博轩等
清华大学出版社
分享一个MFC按钮控件 - FooButton
http://www.fenlog.com/post/79.html
https://www.codeproject.com/Articles/7622/FooButton
fatal error CVT1100: 重复的资源。type:MANIFEST, name:1, language:0x0409 CVTRES
在资源视图中删除RT_MANIFEST资源。
https://www.codeproject.com/Articles/9919/XButtonXP-an-XP-aware-pushbutton-that-can-also-tog
Codejock.Xtreme.Toolkit.Pro.v15.3.1 for MFC
https://codejock.com/downloads/
自绘实现半透明水晶按钮 – 源码分享
https://bbs.csdn.net/topics/390336507
SoftechSoftware DLL
http://www.softechsoftware.it/main.html
Which classes are included into the DLL ?
The SoftechSoftware DLL currently contains the following classes:
CButtonST
CBlendedButtonST
CKeyboardButtonST
CShadeButtonST
CStaticST
CBlendedStaticST
CXPStyleButtonST
CWinXPButtonST
CBkDialogST
CBkResizableDialogST
CCeXDib
CD3desST
CDigitST
CFileDialogST
CLayeredWindowHelperST
CListBoxColorPickerST
CListBoxST
CPageManagerST
CProgressCtrlST
CRegistryST
CResourceServerST
CThemeHelperST
CThrowEventST
CButtonST
CButtonST
https://www.codeproject.com/Articles/57/CButtonST-v3-9-MFC-Flat-buttons
原文网址:http://www.codeproject.com/Articles/57/CButtonST-v-MFC-Flat-buttons
简单使用
1、工程加入BtnST.h BtnST.cpp,屏蔽掉BtnST.h里的#include “BCMenu.h”,因为我不需要CButton的Menu功能。
2、引用头文件#include “BtnST.h”,声明变量CButtonST m_ButtPreStep;
void CSetupDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_BUTTON_PRE_STEP, m_ButtPreStep);
}
3、OnInitDialog里设置背景图片、样式等
BOOL CSetupDlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_ButtPreStep.SetBitmaps(IDB_BITMAPNEXTENABLE, RGB(255, 255,255),
IDB_BITMAPNEXTENABLECURSOR, RGB(255, 255, 255));
m_ButtPreStep.SetAlign(CButtonST::ST_ALIGN_OVERLAP, FALSE);
m_ButtPreStep.SetColor(CButtonST::BTNST_COLOR_FG_IN, RGB(255, 255, 255));
m_ButtPreStep.SetColor(CButtonST::BTNST_COLOR_FG_OUT, RGB(255, 255, 255));
m_ButtPreStep.DrawBorder(FALSE, FALSE);
}
如果是在原有的基础上修改,且IDC_BUTTON_PRE_STEP已经绑定了CButton m_ButtPreStep;只需屏蔽CButton声明同名的CButtonST,再设置背景图、样式。
//CButton m_ButtPreStep;
CButtonST m_ButtPreStep;
CShadeButtonST
https://www.codeproject.com/Articles/1216/CShadeButtonST
CWinXPButtonST
https://www.codeproject.com/Articles/1359/CWinXPButtonST
CXPStyleButtonST v1.2
https://www.codeproject.com/Articles/1754/CXPStyleButtonST-v1-2
CxShadeButton
https://www.codeproject.com/Articles/1121/CxShadeButton
LedButton
https://www.codeproject.com/Articles/9248/LedButton-Status-Control-Owner-draw
CBitmapButton
CBitmapButton
aaa
EDITTEXT IDC_INFOOUT,7,29,303,143,ES_MULTILINE | ES_AUTOVSCROLL |
ES_AUTOHSCROLL | WS_VSCROLL | WS_HSCROLL
advButton Color
hover color
select color
normal color
m_AdvBtn3.Create(_T(" 按钮 3"), WS_CHILD | WS_VISIBLE, CPoint(175, 15), rgnE, this, MY_BTN3, 2,
GetSysColor(COLOR_BTNFACE), nColor
RGB(156, 175, 194), sColor
RGB(237, 175, 71), hColor
GetSysColor(COLOR_BTNFACE) dColor
);
BOOL CAdvButton::Create(LPCTSTR lpszCaption, DWORD dwStyle, const CPoint point,
const HRGN hRgn, CWnd* pParentWnd, UINT nID,
UINT nBorder, COLORREF nColor, COLORREF sColor,
COLORREF hColor, COLORREF dColor)
1
我以前也是用这么傻的办法 对按钮进行美化,后来 发现 一个新的东西,就是“皮肤”,skinmagicbuilder 这个软件 ,在原始代码中添加几句代码就可以同时对对话框 ,静态文本,还有按钮,listctrl 等等都可以进行美化,效果也特别好。你可以从网上搜一下这种软件