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
| program Project1;
uses Windows;
{$R *.res}
const WM_DESTROY = $0002;
var Msg: TMSG;
wClass: TWndClass;
hInst, Handle: HWND;
function WindowProc(hWnd, Msg, wParam, lParam: Longint): Longint; stdcall;
begin
Result:= DefWindowProc(hWnd, Msg, wParam, lParam);
if (Msg = WM_DESTROY) then
begin
UnRegisterClass('myClass', hInst);
ExitProcess(hInst);
end;
end;
begin
hInst:= GetModuleHandle(nil);
with wClass do
begin
Style:= CS_PARENTDC;
hIcon:= LoadIcon(hInst, 'MAINICON');
lpfnWndProc:= @WindowProc;
hInstance:= hInst;
hbrBackground:= COLOR_BTNFACE+1;
lpszClassName:= 'myClass';
hCursor:= 0;
end;
RegisterClass(wClass);
Handle:= CreateWindow('myClass', 'TEST', WS_CAPTION or WS_SYSMENU or WS_VISIBLE or WS_POPUP, 200, 200, 300, 200, 0, 0, hInst, nil);
while GetMessage(Msg, Handle, 0, 0) do
begin
TranslateMessage(Msg);
DispatchMessage(Msg);
end;
end. |
Partager