Professional Documents
Culture Documents
#include <windows.h>
#include"resource.h"
LRESULT CALLBACK WindProcedure(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
WNDCLASS WndCls;
MSG Msg;
char cbuf[128];
HWND hwnd;
WndCls.lpfnWndProc = WindProcedure;
WndCls.cbClsExtra = 0;
WndCls.cbWndExtra = 0;
WndCls.hInstance = hInstance;
WndCls.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
WndCls.lpszMenuName = "Mymenu";
WndCls.lpszClassName = szAppName;
WndCls.hIcon = LoadIcon(hInstance, IDI_APPLICATION);
RegisterClass(&WndCls);
LoadString(hInstance,S_PROGRAMCAPTION,cbuf,sizeof(cbuf));
WS_OVERLAPPEDWINDOW | WS_VISIBLE,
0, 0, 500, 500,
TranslateMessage(&Msg);
DispatchMessage( &Msg);
return (Msg.wParam);
PAINTSTRUCT ps;
HDC hdc;
char cbuf[128];
HINSTANCE hInstance;
POINT pt;
switch(Msg)
case WM_COMMAND:
switch(wParam)
case IDM_QUIT:
DestroyWindow(hWnd);
break;
break;
case WM_SIZE:
nx=LOWORD(lParam);
ny=HIWORD(lParam);
break;
case WM_PAINT:
BeginPaint(hWnd, &ps);
SetMapMode(ps.hdc,MM_ANISOTROPIC);
SetViewportExtEx(ps.hdc,nx,ny,0);
SetWindowExtEx(ps.hdc,100,100,0);
Ellipse(ps.hdc,0,0,100,100);
Rectangle(ps.hdc,20,20,80,80);
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return 0;
Prog 2
#include <windows.h>
#include"resource.h"
LRESULT CALLBACK WindProcedure(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
WNDCLASS WndCls;
MSG Msg;
HBRUSH hBrush;
char cbuf[128];
HWND hwnd;
hBrush=CreateSolidBrush(RGB(255,230,255));
// WndCls.cbSize = 0;
WndCls.lpfnWndProc = WindProcedure;
WndCls.cbClsExtra = 0;
WndCls.cbWndExtra = 0;
WndCls.hInstance = hInstance;
WndCls.hbrBackground = hBrush;
WndCls.lpszMenuName = "Mymenu";
WndCls.lpszClassName = szAppName;
RegisterClass(&WndCls);
LoadString(hInstance,S_PROGRAMCAPTION,cbuf,sizeof(cbuf));
WS_OVERLAPPEDWINDOW | WS_VISIBLE,
TranslateMessage(&Msg);
DispatchMessage( &Msg);
DeleteObject(hBrush);
return (Msg.wParam);
HDC hdc;
PAINTSTRUCT Ps;
char cbuf[128];
HINSTANCE hInstance;
switch(Msg)
case WM_CREATE:
hdc=GetDC(hWnd);
SetBkMode(hdc,TRANSPARENT);
SetTextColor(hdc,RGB(0,0,255));
SelectObject(hdc,GetStockObject(ANSI_VAR_FONT));
hPen=CreatePen(PS_SOLID,3,RGB(255,0,0));
SelectObject(hdc,hPen);
hBrush=CreateSolidBrush(RGB(255,200,0));
SelectObject(hdc,hBrush);
break;
case WM_COMMAND:
switch(wParam)
case IDM_CHANGE:
hdc=GetDC(hWnd);
SelectObject(hdc,GetStockObject(BLACK_PEN));
SelectObject(hdc,GetStockObject(BLACK_BRUSH));
DeleteObject(hPen);
DeleteObject(hBrush);
hPen=CreatePen(PS_SOLID,3,RGB(0,255,0));
SelectObject(hdc,hPen);
hBrush=CreateSolidBrush(RGB(0,200,200));
SelectObject(hdc,hBrush);
SelectObject(hdc,GetStockObject(OEM_FIXED_FONT));
InvalidateRect(hWnd,NULL,TRUE);
break;
case IDM_QUIT:
DestroyWindow(hWnd);
break;
break;
case WM_PAINT:
Ellipse(Ps.hdc,10,10,160,110);
hInstance=(HINSTANCE)GetWindowLong(hWnd,GWL_HINSTANCE);
LoadString(hInstance,S_CENTERTEXT,cbuf,sizeof(cbuf));
TextOut(Ps.hdc,50,50,cbuf,lstrlen(cbuf));
EndPaint(hWnd, &Ps);
break;
case WM_DESTROY:
DeleteObject(hPen);
DeleteObject(hBrush);
PostQuitMessage(WM_QUIT);
break;
default:
return 0;
Prog 3
#include <windows.h>
#include"resource.h"
LRESULT CALLBACK WindProcedure(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
{
WNDCLASS WndCls;
MSG Msg;
HBRUSH hBrush;
char cbuf[128];
HWND hwnd;
hBrush=CreateSolidBrush(RGB(255,230,255));
// WndCls.cbSize = 0;
WndCls.lpfnWndProc = WindProcedure;
WndCls.cbClsExtra = 0;
WndCls.cbWndExtra = 0;
WndCls.hInstance = hInstance;
WndCls.hbrBackground = hBrush;
WndCls.lpszMenuName = "Mymenu";
WndCls.lpszClassName = szAppName;
RegisterClass(&WndCls);
LoadString(hInstance,S_PROGRAMCAPTION,cbuf,sizeof(cbuf));
TranslateMessage(&Msg);
DispatchMessage( &Msg);
DeleteObject(hBrush);
return (Msg.wParam);
HDC hdc;
PAINTSTRUCT Ps;
char cbuf[128];
HINSTANCE hInstance;
switch(Msg)
{
case WM_CREATE:
hdc=GetDC(hWnd);
SetBkMode(hdc,TRANSPARENT);
SetTextColor(hdc,RGB(0,0,255));
SelectObject(hdc,GetStockObject(ANSI_VAR_FONT));
hPen=CreatePen(PS_SOLID,3,RGB(255,0,0));
SelectObject(hdc,hPen);
hBrush=CreateSolidBrush(RGB(255,200,0));
SelectObject(hdc,hBrush);
break;
case WM_COMMAND:
switch(wParam)
case IDM_CHANGE:
hdc=GetDC(hWnd);
SelectObject(hdc,GetStockObject(BLACK_PEN));
SelectObject(hdc,GetStockObject(BLACK_BRUSH));
DeleteObject(hPen);
DeleteObject(hBrush);
hPen=CreatePen(PS_SOLID,3,RGB(0,255,0));
SelectObject(hdc,hPen);
hBrush=CreateSolidBrush(RGB(0,200,200));
SelectObject(hdc,hBrush);
SelectObject(hdc,GetStockObject(OEM_FIXED_FONT));
InvalidateRect(hWnd,NULL,TRUE);
break;
case IDM_QUIT:
DestroyWindow(hWnd);
break;
break;
case WM_PAINT:
Ellipse(Ps.hdc,10,10,160,110);
hInstance=(HINSTANCE)GetWindowLong(hWnd,GWL_HINSTANCE);
LoadString(hInstance,S_CENTERTEXT,cbuf,sizeof(cbuf));
TextOut(Ps.hdc,50,50,cbuf,lstrlen(cbuf));
EndPaint(hWnd, &Ps);
break;
case WM_DESTROY:
DeleteObject(hPen);
DeleteObject(hBrush);
PostQuitMessage(WM_QUIT);
break;
default:
return 0;