Draw a PNG in a control with GDI+?

How can i draw a transparent PNG to a control with GDI+?

I know how to draw a PNG to the Dialog box but not to a control.

This is what i use to draw a PNG to the dialog Box

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <gdiplus.h>

#pragma comment (lib,"gdiplus.lib")

using namespace Gdiplus;

... all MFC stuff

void CAppName::OnPaint()
{
       CPaintDC dc(this); // device context for painting

   if (IsIconic())
   {

      SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);

      // Center icon in client rectangle
      int cxIcon = GetSystemMetrics(SM_CXICON);
      int cyIcon = GetSystemMetrics(SM_CYICON);
      CRect rect;
      GetClientRect(&rect);
      int x = (rect.Width() - cxIcon + 1) / 2;
      int y = (rect.Height() - cyIcon + 1) / 2;

      // Draw the icon
      dc.DrawIcon(x, y, m_hIcon);
   }
   else
   {
      CDialog::OnPaint();
   }

      //heres where i put the code to paint a PNG on runtime

       Rect rect(20,20,50,50);
       Graphics grpx(dc);
       Image * Img = Image::FromFile(L"DriveIcon.png",FALSE);
       grpx.DrawImage(Img,rect);
}


How can i use that to draw to a Control?
Topic archived. No new replies allowed.