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
|
HDC hdcBackground, hdcTemp, hdcWindow;
HBITMAP hBackbuffer, hBitmapEmpty;
hdcWindow = GetDC(Application::m_pTheApplication->GetWindowReference());
hdcBackground = CreateCompatibleDC(0);
m_pBackbuffer->GetHBITMAP(RGB(255, 255, 255), &hBackbuffer);
SelectObject(hdcBackground, hBackbuffer);
hdcTemp = CreateCompatibleDC(hdcWindow);
hBitmapEmpty = CreateCompatibleBitmap(hdcWindow, 1024, 768);
SelectObject(hdcTemp, hBitmapEmpty);
BitBlt(hdcTemp, 0, 0, 1024, 768, hdcBackground, 0, 0, SRCCOPY);
GetWindowRect(Application::m_pTheApplication->GetWindowReference(), &m_rectWindow);
POINT positionWindow = {m_rectWindow.left, m_rectWindow.top};
POINT SourcePoint = {0, 0};
UpdateLayeredWindow(Application::m_pTheApplication->GetWindowReference(),
hdcWindow,
&positionWindow,
&m_BackbufferSize,
hdcTemp,
&SourcePoint,
0,
&m_blendPixelFunction,
ULW_ALPHA);
DeleteObject(hBitmapEmpty);
DeleteDC(hdcTemp);
DeleteObject(hBackbuffer);
DeleteDC(hdcBackground);
|