MFC中如何实现按钮切换Picture控件中的图片内容
1、如下图所示,新建一个mfc示例工程,按下图所示的步骤可以直接新建一个简单的mfc对话框工程



2、然后,打开资源管理器,编辑对话框界面,拖入一个图片控件,如下图所示,并设置图片控件的属性,生成控件的变量,注意控件的属性设置,否则图片不会显示







3、然后添加两个位图到资源里,如下图所示,这里我简单截取两个位图,参考下图所步骤添加位图即可




4、添加两个位图变量,用来保存位图的资源句柄值,如下图所示,参考代码如下:
CBitmap m_bitmap, m_bitmap2;
CStatic m_ctrlpicture;

5、在程序第一次初始化时加载位图,并保存位图的句柄,如下图所示,我在对话框初始化的时候加载位图,参考代码如下
m_bitmap.LoadBitmap(IDB_BITMAP1);
m_bitmap2.LoadBitmap(IDB_BITMAP3);
m_ctrlpicture.SetBitmap((HBITMAP)m_bitmap2);

6、然后是实现切换按钮的逻辑代码,参考代码如下:
void CMFCApplication1Dlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
static int testval = 0;
if (testval == 0)
{
testval = 1;
m_ctrlpicture.SetBitmap((HBITMAP)m_bitmap);
}
else
{
testval = 0;
m_ctrlpicture.SetBitmap((HBITMAP)m_bitmap2);
}
m_ctrlpicture.InvalidateRect(NULL);
//CDialogEx::OnOK();
}

7、编译运行程序,如下图所示,可以看到程序启动的时候可以显示一个图片,点击按钮可以实现图片的切换

