图片显示

图片显示有以下几种方法:

1)静态加载(bmp);

方法一:

m_bmp[i] = ::LoadBitmap(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDB_BITMAP1 + i));

  m_ctl_picture.ModifyStyle(0xF,SS_BITMAP|SS_CENTERIMAGE);
  m_ctl_picture.SetBitmap(m_bmp[num]);                

 //注意:在程序合适位置(一般在析构函数处)应删除图片句柄,

if(m_bmp[i])

{::DeleteObject(m_bmp[i]);}

 

2)动态加载(bmp);

3)其余控件加载(多种样式图片);

4)通过CBitmap,HBITMAP,直接用OnPaint()中画(bmp);

详见  http://wenku.baidu.com/view/0b6fe8563c1ec5da50e27063.html

5)通过CImage,直接在OnPaint()中画(bmp、jpg);

   在OnPaint()的else中添加

     CDC *pDC = this->GetDC();

      CImage img;

     img.Load("c:\\test.bmp");

     int width = img.GetWidth();

    int height = img.GetHeight();

    img.Draw(pDC->m_hDC,0,0,width,height);


附1:控件大小控制,以按钮为例:

       CRect rect;

       m_btn_test.GetWindowRect(&rect);

       ScreenToClient(&rect);

       m_btn_test.MoveWindow(rect.left,rect.top,rect.width()/2,rect.height()/2,true);

附件2:显示动态gif文件

       步骤一:添加扩展类文件CPictureEx.cpp与CPictureEx.h;

       步骤二:在资源中添加gif文件,如果添加gif文件不成功,最好删掉文件,重新添加到目录下,修改扩展名,再增加。

       步骤三:实例化类CPictureEx,并在要显示gif图片地方添加如下代码:

        if (m_gifpicture.Load(MAKEINTRESOURCE(IDR_GIF1),_T("gif")))//IDR_GIF1是添加的GIF动画的ID号。gif即是在添加时所键入的文件类型
        m_gifpicture.Draw();

    

你可能感兴趣的:(图片显示)