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

 时间:2026-02-14 02:09:29

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控件中的图片内容

  • 云服务器磁盘挂载之Windows篇
  • windows 2012怎么添加用户并设置远程登录
  • 华硕路由器怎样使用CloudXNS DDNS插件?
  • 解决Zx20工作站USB3.0接口间歇性失灵问题
  • 易语言写链接ftp服务器
  • 热门搜索
    桂林旅游自由行攻略 鼻头怎么变小 科目汇总表怎么做 植物大战僵尸无尽版攻略 红烧鲳鱼的做法 三天苹果减肥法 苹果6怎么连接电脑 郴州东江湖旅游攻略 奇迹暖暖搭配师联盟攻略 电池充不进电怎么办