MFC设置对话框的背景位图

时间:2016-10-22 16:17:34

标签: c++ user-interface bitmap mfc

我开始研究MFC。所以我做了一个简单的程序。 我想在对话框中设置背景位图图像,但代码不起作用。编译器不输出任何错误。执行也很好,但是对话框是空的。请帮帮我......

IMPLEMENT_DYNAMIC(Works, CDialogEx)

Works::Works(CWnd* pParent /*=NULL*/)
    : CDialogEx(IDD_WORKS, pParent)
{

}

BOOL Works::OnInitDialog()
{
    CDialogEx::OnInitDialog();


    return TRUE;  // return TRUE unless you set the focus to a control
}

void Works::OnPaint()
{
    CPaintDC dc(this);

    UINT tBG_IMAGE_ID = IDB_BG;
    CRect tRect;
    GetClientRect(&tRect);

    CBitmap tBitmap, *pOldBitmap;
    CDC tMemdc;

    BOOL test = tBitmap.LoadBitmap(IDB_BG);

    tMemdc.CreateCompatibleDC(&dc);

    pOldBitmap = tMemdc.SelectObject(&tBitmap);

    dc.BitBlt(0, 0, tRect.Width(), tRect.Height(), &tMemdc, 0, 0, SRCCOPY);

    BOOL test = tBitmap.LoadBitmap(tBG_IMAGE_ID);

    tMemdc.SelectObject(pOldBitmap);
    tBitmap.DeleteObject();
    tMemdc.DeleteDC();
}

Works::~Works()
{

}

void Works::DoDataExchange(CDataExchange* pDX)
{
    CDialogEx::DoDataExchange(pDX);
}


BEGIN_MESSAGE_MAP(Works, CDialogEx)
END_MESSAGE_MAP()

0 个答案:

没有答案
相关问题