MFC中 给按钮添加图片的方法
来源:互联网 发布:如何健康减肥知乎 编辑:程序博客网 时间:2024/05/17 06:20
方法一:直接给CButton加图片。
1.在资源编辑器中添加一个按钮,把它的Bitmap属性设为true
2.在按钮上点右键,添加一个变量m_Btn(CButton类型的)
3.将图片导入到资源管理器中,ID为IDB_BITMAP1
4.然后在初始化中加入如下代码:
HBITMAP hBmp=::LoadBitmap(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_BITMAP1));
m_Btn.SetBitmap(hBmp);
m_Btn.SetBitmap(hBmp);
如果是加载非资源图片的话,就在初始化中加入下代码:
HBITMAP hBitmap = (HBITMAP)::LoadImage(
NULL,
"E://a.bmp", // 图片全路径
IMAGE_BITMAP, // 图片格式
0,0,
LR_LOADFROMFILE|LR_CREATEDIBSECTION); // 注意LR_LOADFROMFILE
然后获得按钮句柄并调用SetBitmap即可。
这样按钮上的文字就被图片取而代之了,但是我感觉不太好看。
方法二:利用CBitmapButton,可以很容易地做出点动态的效果。
1.在资源编辑器中添加一个按钮.
把它的Owner Draw属性设为true.
把它的ID设为IDC_BUTTON1.
把它的Caption改成BITMAP_BUTTON
2.准备4张图片(只准备其中一两张也可以),添加到资源管理器中
正常状态时的按钮图片 的ID设为"BITMAP_BUTTONU"
鼠标按下时的按钮图片 的ID设为"BITMAP_BUTTOND"
鼠标点击过后的按钮图片 的ID设为"BITMAP_BUTTONF"
按钮失效后的图片 的ID设为"BITMAP_BUTTONS"
注意:一定要左右都带双引号!
其实就是 "按钮的Caption+U或D或F或S"
3.在dlg的头文件里添加一个CBitmapButton类型的成员变量m_bbtn
4.在初始化中加入以下代码
m_bbtn.AutoLoad(IDC_BUTTON1, this);
注意:如果对按钮(CButton)用向导添加了Control变量的话,把DDX_Control(pDX, IDC_BUTTON1, m_btn1);这一行注释掉就可以了。
方法三:使用CMFCButton
1、在对话框编辑界面中,拖入一个button控件,改资源ID号为IDC_BUTTON_TEST。
2、然后在CXXXDlg::OnInitDialog()中添加如下代码:
2、然后在CXXXDlg::OnInitDialog()中添加如下代码:
CMFCButton * button1 = new CMFCButton;
button1->Create(_T("Test Button"),
WS_VISIBLE,
CRect(160, 15, 280, 150),
this,
IDC_BUTTON_TEST);
// 加载图片
button1->SetImage(IDB_BITMAP1); //IDB_BITMAP1为自己导入的图片的ID
button1->Create(_T("Test Button"),
WS_VISIBLE,
CRect(160, 15, 280, 150),
this,
IDC_BUTTON_TEST);
// 加载图片
button1->SetImage(IDB_BITMAP1); //IDB_BITMAP1为自己导入的图片的ID
运行会发现出现了两个按钮,那么在对话框编辑界面中把Button1的Visible属性设为False便可以了。
阅读全文
0 0
- MFC中 给按钮添加图片的方法
- MFC中 给按钮添加图片的方法
- MFC中给按钮添加图片
- MFC给按钮添加图片
- MFC给按钮添加图片
- MFC给按钮添加图片
- MFC给按钮添加图片
- MFC给按钮添加图片
- MFC给按钮添加图片
- MFC给按钮添加图片
- MFC给按钮添加图片
- MFC给按钮添加图片 SetBitmap
- MFC按钮中导入图片的方法
- 在MFC中给按钮添加图标
- MFC中为按钮添加图片,图标
- mfc 按钮添加图片
- MFC按钮添加图片
- MFC给按钮添加皮肤
- android Service发送广播
- sqlite3用法
- window 下使用GNU工具的方法
- Android之Canvas.drawCircle()方法的理解
- TextView设置drawable
- MFC中 给按钮添加图片的方法
- kettle5.3源码部署
- 这些关于四轴飞行器名词你都明白么
- JS的一些小技巧
- XML文件详解以及解析
- IntelliJ idea mybatis插件功能介绍
- CSS
- 测试计算机大小端
- lintcode python代码 433岛屿个数