MFC中如何实现按钮切换Picture控件中的图片内容

2025-10-08 21:50:43

1、如下图所示,新建一个mfc示例工程,按下图所示的步骤可以直接新建一个简单的mfc对话框工程

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

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

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

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

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

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

CBitmap m_bitmap, m_bitmap2;

CStatic m_ctrlpicture;

MFC中如何实现按钮切换Picture控件中的图片内容

5、在程序第一次初始化时加载位图,并保存位图的句柄,如下图所示,我在对话框初始化的时候加载位图,参考代码如下

m_bitmap.LoadBitmap(IDB_BITMAP1);

m_bitmap2.LoadBitmap(IDB_BITMAP3);

m_ctrlpicture.SetBitmap((HBITMAP)m_bitmap2);

MFC中如何实现按钮切换Picture控件中的图片内容

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();

}

MFC中如何实现按钮切换Picture控件中的图片内容

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

MFC中如何实现按钮切换Picture控件中的图片内容

MFC中如何实现按钮切换Picture控件中的图片内容

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢