none
显示图片的问题 RRS feed

答案

  • 简单的做法,可以使用GDI+ 实现

    以对话框显示png 为例:

    1) 在stdAfx.h 文件中加入以下内容:

    #include "gdiplus.h"
    using namespace Gdiplus;

    2) 在App 的InitInstance() 函数中加入下面代码:

        GdiplusStartupInput gdiplusStartupInput;
        ULONG_PTR gdiplusToken;
        GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
        // 中间是显示Dialog 代码
       GdiplusShutdown(gdiplusToken);

    3) 在 对话框的OnPaint 函数里面加入下面代码:

            if(m_hWnd)
            {
                Image* pImg = Image::FromFile(_T("图片路径"));
                Graphics* g = Graphics::FromHWND(m_hWnd);
                g->DrawImage(pImg, 0, 0, pImg->GetWidth(), pImg->GetHeight());
            }


    • 已标记为答案 yanghome 2010年2月5日 8:40
    2010年2月5日 8:14
    版主

全部回复

  • 你说的太笼统了,图片格式是什么? 要显示在哪里? 都没有说清楚。
    2010年2月5日 4:14
    版主
  • 主要是显示png图片,如果显示其他图片是否需要转码?

    2010年2月5日 6:13
  • 简单的做法,可以使用GDI+ 实现

    以对话框显示png 为例:

    1) 在stdAfx.h 文件中加入以下内容:

    #include "gdiplus.h"
    using namespace Gdiplus;

    2) 在App 的InitInstance() 函数中加入下面代码:

        GdiplusStartupInput gdiplusStartupInput;
        ULONG_PTR gdiplusToken;
        GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
        // 中间是显示Dialog 代码
       GdiplusShutdown(gdiplusToken);

    3) 在 对话框的OnPaint 函数里面加入下面代码:

            if(m_hWnd)
            {
                Image* pImg = Image::FromFile(_T("图片路径"));
                Graphics* g = Graphics::FromHWND(m_hWnd);
                g->DrawImage(pImg, 0, 0, pImg->GetWidth(), pImg->GetHeight());
            }


    • 已标记为答案 yanghome 2010年2月5日 8:40
    2010年2月5日 8:14
    版主