Академический Документы
Профессиональный Документы
Культура Документы
: PW
1
: WINDOWS
:
TI 095 .
:
2011
1
.
: .
1 .
.
-,
,
.
Windows , Windows
, .
,
.
, Windows,
, . Windows
, (Graphics
Device Interface, GDI), . Windows
. ,
Windows, ,
Windows.
.
, .
- , ,
Windows, .
- , .
, ,
, .
3
.
.
Windows MS-DOS:
Win32 :
, :
:
wndclass.cbSize = sizeof(wndclass);
(CS_HREDRAW)
(CS_VREDRAW) :
wndclass.style = CS_HREDRAW | CS_VREDRAW;
, WndProc :
wndclass.lpfnWndProc = WndProc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
,
Windows.
, 0.
:
wndclass.hInstance = hInstance;
,
:
wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wndclass.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
DispatchMessage(&msg);
}
(GetMessage(&msg,NULL,0,0)),
(TranslateMessage(&msg))
(DispatchMessage(&msg)).
WndProc ,
WM_PAINT WM_DESTROY. WM_PAINT
, .
" 1 -084
" , :
DrawText (hdc, " 1 -084
", -1, &rect,DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
WM_DESTROY
WM_QUIT :
PostQuitMessage (0) ;
,
.
, ,
.
.
1) Windows 95. 1.
2) . UTM.
//--------------------------------------------------------------------------#include <windows.h>
#include <vcl.h>
//--------------------------------------------------------------------------LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,
LPSTR szCmdLine,int iCmdShow){
static char* szAppName[]={"Hello World"};
WNDCLASSEX wndclass;
MSG msg;
HWND hwnd;
wndclass.cbSize
= sizeof (wndclass) ;
wndclass.style
= CS_HREDRAW | CS_VREDRAW ;
wndclass.lpfnWndProc
= WndProc;
wndclass.cbClsExtra
= 0 ;
wndclass.cbWndExtra
= 0 ;
wndclass.hInstance
= hInstance ;
wndclass.hIcon
wndclass.hCursor
= NULL ;
wndclass.lpszClassName = *szAppName ;
wndclass.hIconSm
RegisterClassEx (&wndclass) ;
hwnd
CreateWindow
(*szAppName,"The
Hello
Program
",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NU
LL,hInstance,NULL);
ShowWindow(hwnd, iCmdShow);
UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0)){
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WndProc (HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
{
HDC
hdc ;
PAINTSTRUCT ps ;
RECT
rect ;
switch (iMsg)
{
case WM_PAINT :
hdc = BeginPaint (hwnd, &ps) ;
GetClientRect (hwnd, &rect) ;
DrawText (hdc, " 1 -095
", -1, &rect,DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
EndPaint (hwnd, &ps) ;
return 0 ;
case WM_DESTROY :
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc (hwnd, iMsg, wParam, lParam) ;
}
//---------------------------------------------------------------------------