概述
本文参考学习 https://blog.csdn.net/zxccaoya/article/details/54142523 而来。
这里介绍mfc 中改变按钮颜色的最简单方法。
使用CMFCButton类
在mfc 的Dialog 或者 Form 中添加一个按钮,但注意是MFCButton。
MFC自带的MFC Button Control控件等按钮可以修改颜色,还能添加图片,设置字体颜色等。这些控件就在工具箱的下面,前面带MFC开头的那些。
添加后,caption 是MfcButton1, ID是IDC_MFCBUTTON1。
点击产生按钮事件OnBnClickedMfcbutton1(),在这个事件里添加代码:
CMFCButton* mfcb=(CMFCButton*)GetDlgItem(IDC_MFCBUTTON1);
mfcb->SetFaceColor(RGB(0, 255, 0));
现在可以看到按钮一点,就变为红色的按钮了。
改变RGB 里面的数字,可以改变不同颜色的按钮。
可能会有的问题:
CMFCButton中的SetFaceColor()可能会显示不出颜色,需要设置
m_button_sure.m_bTransparent=FALSE;
m_button_sure.m_bDontUseWinXPTheme= TRUE;才可。
在button里面点击会有黑圈,要消除黑色圆圈需要使button里面的属性m_bDrawFocus = FALSE。
链接http://www.cnblogs.com/weiqubo/archive/2011/03/31/2000953.html
消除button的边框,不是很立体的,使
m_button_cancel.m_nFlatStyle = CMFCButton::BUTTONSTYLE_NOBORDERS;使其样式变化,CMFCButton可以设置属性。
多姿多彩的按钮颜色
为了按我们选择的颜色,改变按钮,需要用到颜色拾取对话框CColorDialog
下面是我程序的代码,前3句是拾取颜色的代码。
void Crtc4View::OnBnClickedMfcbutton1()
{
CColorDialog dlg;
dlg.DoModal();
COLORREF color=dlg.GetColor();
CMFCButton* mfcb=(CMFCButton*)GetDlgItem(IDC_MFCBUTTON1);
mfcb->SetFaceColor(color);
}
运行程序,点击按钮,就有选择颜色的对话框。拾取什么颜色,按钮就显示什么颜色。
最后
以上就是害怕微笑为你收集整理的MFC中改变按钮颜色的方法的全部内容,希望文章能够帮你解决MFC中改变按钮颜色的方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复