上一节中鸡啄米讲的是滚动条控件,本节浸要讲一种简单实用的控件,图片控件Picture Control。银河文娱有哪些网站_云顶文娱场7610_bet9九州 网站可以正正在界面某个位置放入图片控件,显现图片以美化界面。

       图片控件简介

       图片控件和前面讲到的静态文本框 都是静态文本控件,于是两者的运用方法有很众相同之处,所属类都是CStatic类,相干成员函数已正正在前面先容,这里就不浸复了。

       图片控件静态和动态加载图片

        鸡啄米下面为大家演示怎样为图片控件静态和动态加载位图图片。

       1. 图片控件静态加载图片

       1)创建一个基于对话框的MFC工程,名称设置为“Example27”。

        2)准备一张Bitmap图片,名称设为“test.bmp”,放到工程的res文件夹中,res文件夹路径为...\Example27\Example27\res。鸡啄米正正在这里用的是一张鸡啄米网站的截图。

       3)正正在Resource View中的“Example27.rc*”节点上点右键,选择“Add Resource...”,弹出“Add Resource”对话框:

 VS2010/MFC编程初学之二十七(常用控件:图片控件Picture Control)

       然后正正在左侧的“Resource Type”中选择“Bitmap”,点按钮“Import”,显现一个文件对话框,银河文娱有哪些网站_云顶文娱场7610_bet9九州 网站选择res文件夹中的test.bmp图片文件,导入成功后会正正在Resource View的Example27.rc*节点下显现一个新的子节点“Bitmap”,而正正在“Bitmap”节点下可以看到刚添加的位图资源IDB_BITMAP1,这里的默认ID就不修改了。

       4.)正正在自动天生的对话框模板IDD_EXAMPLE27_DIALOG中,删除“TODO: Place dialog controls here.”静态文本控件、“OK”按钮和“Cancel”按钮。添加一个Picture Control控件,正正在图片控件的属性页中有一个Type属性,Type属性下拉列表中有8种样板,下面分别先容下:

       Frame:显现一个无填充的矩形框,边框颜色可以通过Color属性的下拉列表设定

        Etched Horz:显现一条横分割线

        Etched Vert:显现一条竖分割线

       Rectangle:显现一个填充的矩形框,矩形颜色可通过Color属性的下拉列表设定

       Icon:显现一个图标(Icon),图标通过Image 下拉列表来设置图标资源ID

       Bitmap:显现一个位图(Bitmap),位图通过Image 下拉列表来设置位图资源ID

        Enhanced Metafile:显现一个增强的元数据文件(Metafile)

       Owner Draw:自绘

        由于银河文娱有哪些网站_云顶文娱场7610_bet9九州 网站要加载的是位图图片,以是Type属性选择Bitmap。

        5)正正在图片控件的Image属性的下拉列表中选择3)中导入的位图IDB_BITMAP1。

       6)编译运行程序,弹出结果对话框,如下图所示:

VS2010/MFC编程初学之二十七(常用控件:图片控件Picture Control)

        2. 图片控件动态加载图片

        以上讲的是静态加载图片的方法,下面接着讲动态加载图片的方法。程序依然沿用上面的工程。步骤如下:

        1)将上面添加的图片控件的Image属性IDB_BITMAP1清空,Type属性不变。

        2)修改图片控件的ID为IDC_JIZHUOMI_STATIC,然后为其添加CStatic样板控件变量m_jzmPicture。(若不修改ID则无法为其添加控件变量

         3)正正在对话框下方添加一按钮控件,Caption属性改为“加载图片”,ID设为IDC_LOAD_PIC_BUTTON。

        4)为按钮IDC_LOAD_PIC_BUTTON添加点击消歇的治理函数CExample27Dlg::OnBnClickedLoadPicButton(),然后修改此函数的函数实现如下:

C++代码
  1. void CExample27Dlg::OnBnClickedLoadPicButton()   
  2. {   
  3.     // TODO: Add your control notification handler code here   
  4.     CBitmap bitmap;  // CBitmap对象,用于加载位图   
  5.     HBITMAP hBmp;    // 保存CBitmap加载的位图的句柄   
  6.   
  7.     bitmap.LoadBitmap(IDB_BITMAP1);  // 将位图IDB_BITMAP1加载到bitmap   
  8.     hBmp = (HBITMAP)bitmap.GetSafeHandle();  // 获取bitmap加载位图的句柄   
  9.     m_jzmPicture.SetBitmap(hBmp);    // 设置图片控件m_jzmPicture的位图图片为IDB_BITMAP1   
  10. }  

         5)编译运行程序,弹出结果对话框,点击按钮“加载图片”,结果如下:

VS2010/MFC编程初学之二十七(常用控件:图片控件Picture Control)

        图片控件Picture Control的实质就讲到这里了。应该说还是比拟简单的。着末,鸡啄米正正在此对一直以后体贴本站的老朋友以及刚来的新朋友表示感谢。

除非特别注明,鸡啄米文章均为原创
转载请标明本文地址:http://www.sygjbus.cn/software/193.html
2012年6月25日
作家:鸡啄米 分类:软件开发 浏览: 评论:45