zoukankan      html  css  js  c++  java
  • MFC的picture控件 静态加载与动态加载

    静态加载

    001:新建对话框工程,加入picture控件,修改属性 把picture控件中的type设置为bitmap类型 , 关联变量为m_Bmp(类型为control),

    002:双击按钮,在消息处理函数中添加

    HBITMAP hBitmap; 
    hBitmap = ::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP1)); 
    m_Bmp.SetBitmap(hBitmap);                 /***IDB_BITMAP1是你载入资源中位图的ID号***/

    动态加载

    动态载入就是不用事先把位图导入资源,直接在程序运行的时候,弹出一个文件选择对话框,选择你想要显示的对话框即可。此列中依旧要把picture控件中的type设置为bitmap类型,否则会出现图片显示不出来的问题。

    和以上静态显示唯一的区别只体现在按钮的消息处理函数中,此列中的消息处理函数内容为

    CString m_strfile; /***你在文件选择对话框中选中的文件名***/ 
    CRect r; 
    GetClientRect(&r); 
        CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, 
       "Bmp files(*.bmp)|*.bmp|",NULL); 
        if(dlg.DoModal ()) 

       m_strfile=dlg.GetPathName (); 

    HBITMAP hbitmap=(HBITMAP)LoadImage(AfxGetInstanceHandle(), 
               m_strfile, 
               IMAGE_BITMAP, 
               r.Width()/2, 
               r.Height()/2, 
               LR_LOADFROMFILE);    
    m_Bmp.SetBitmap(hbitmap);

    总结:图片的显示处理可以使用CxImage库。

    CxImage类库是一个优秀的图像操作类库。它可以快捷地存取、显示、转换各种图像。功能强大齐全。

  • 相关阅读:
    idea快捷的输出常用语句
    OneinStack基础搭建typecheo轻量级博客
    自动化框架介绍及使用
    jenkins配置自动化
    selenium模拟鼠标点击
    Linux下安装nginx
    解决“chrome正受到自动测试软件的控制”信息栏显示问题
    Git 常用操作
    ZendStudio自定义代码补全,自定义代码段
    07-python之装饰器
  • 原文地址:https://www.cnblogs.com/flysnail/p/2955684.html
Copyright © 2011-2022 走看看