Code:
#include <windows.h>
#include "resource.h"
#define CX_BITMAP 16
#define CY_BITMAP 16
char szAppName[] = TEXT("Bitmap test");
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
HINSTANCE hInst;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
HWND hwnd;
MSG msg;
WNDCLASS wndclass;
hInst = hInstance;
GreenLight= LoadBitmap(hInst,TEXT("GreenLight"));
wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = WndProc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hInstance;
wndclass.hIcon = LoadIcon(NULL,IDI_APPLICATION);
wndclass.hCursor = LoadCursor(NULL,IDC_ARROW);
wndclass.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = szAppName;
if (!RegisterClass(&wndclass))
{
return 0;
}
hwnd = CreateWindow(szAppName, TEXT("Basic Windows"),
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,CW_USEDEFAULT,
CW_USEDEFAULT,CW_USEDEFAULT,
NULL,NULL,hInstance,NULL);
if (!hwnd)
return 0;
ShowWindow (hwnd,iCmdShow);
UpdateWindow(hwnd);
while(GetMessage (&msg,NULL,0,0))
{
TranslateMessage (&msg);
DispatchMessage (&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HBITMAP GreenLight;
HDC hdc,hdc1,hdcMem;
PAINTSTRUCT ps;
int i;
switch (message)
{
case WM_CREATE:
GreenLight= LoadBitmap(hInst,TEXT("GreenLight"));
return 0;
case WM_PAINT:
hdc = BeginPaint(hwnd,&ps);
hdcMem = CreateCompatibleDC(hdc);
if (!SelectObject(hdcMem,GreenLight))
MessageBeep(0);
BitBlt(hdc,12,12,CX_BITMAP,CY_BITMAP,hdc,0,0,SRCCOPY);
EndPaint(hwnd,&ps);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hwnd,message,wParam,lParam);
}
can anyone help me out?