您的位置:首页 > 编程语言 > C语言/C++

WTL对话框添加背景图片的方法(C++)

2016-07-13 13:30 253 查看
   第一步,在对话框的头文件中添加如下:

#include <GdiPlus.h>
using namespace Gdiplus;
extern GdiplusStartupInput gGdiInput;


   第二步,在需要添加背景图片的对话框的类中,增加如下消息映射

         MESSAGE_HANDLER(WM_PAINT, OnPaint)

   同时在对话框的OnInitDialog函数中,增加如下初始化:

ULONG  token = 0;
GdiplusStartup(&token, &gGdiInput, NULL);
    第三步,在对话框的对应C++文件中添加如下类似代码(图片路径需要修改为你自己本地png文件的路径):

#pragma  comment(lib, "GdiPlus.lib")
GdiplusStartupInput gGdiInput;

LRESULT CMainDlg::OnPaint(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/)
{
CPaintDC dc(m_hWnd);
RECT rect;
GetClientRect(&rect);

HDC hDC = dc.m_hDC;
Graphics g(hDC);
Image im(L"E:\\res\\1.png");
g.DrawImage(&im, 0, 0, rect.right-rect.left, rect.bottom-rect.top);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  WTL 对话框 背景图片