Азбука программирования в Win32 API


Азбука программирования в Win32 API - стр. 8


Ниже приведен текст программы (вывод в окно строки, о ней говори­лось ранее). Мне бы хотелось, чтобы читатель быстро просмотрел про­грамму и попытался разделить ее на части, соответствующие операторам псевдоязыка. Вот текст этой программы:

#includc <windows.h>

ERESUET CAEEBACK HelloWorldWndProc ( HWND, UINT, UINT, LONG ); hit WINAPI WinMain ( HTNSTANCF, hlnstance, HINSTANCE hPrevinstance,

EPSTR IpszCmdParam, int nCmdShow )

i

HWND hWnd ;

WNDCLASS WndClass ;

MSG Msg;

char szClassNamef] - «HclloWorld»; /* Регистрируем создаваемый класс */ /* Заполняем структуру типа WNDCLASS */

WndClass.stylc = CS_HREDRAW | CS_VREDRAW;

WndClass.lpfnWndProc - HelloWorldWndProc;

WndClass.cbClsExtra = 0;

WndClass.cbWndExtra = 0;

WndClass.hlnstance = hlnstance ;

WndClass.hlcon = Eoadlcon (NULL,IDI_APPLICATION);

WndClass.hCursor = LoadCursor (NULL, IDC_ARROW);

WndClass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH);

WndClass.IpsxMenuName = NUEE;

WndClass.IpszClassName = szClassName;

if ( !RegistcrClass(&WndClass))

10

McssageBox(NULL,«Cannot register class»,»Error»,MB _OK); return 0;

hWnd = CreateWindow(szClassName, «Program No 1», WS_OVERLAPPEDWINDOW, CWJJSEDEFAUET, CWJJSEDEFAUET, CWJJSEDEFAUET, CWJJSEDEFAULT, NUEE, NUEE, hlnstance, NUEE);

if(!liWncl)

MessageBox(NULL,»C'annot create window»,»F,rror»,MB_OK); return 0;

/* Show our window */

Sho\vWindow(hWnd,nCmdShow); UpdaleWindow(hWnd);

/* Beginning of messages cycle */

whi!e(GetMcssagc(&Msg, NUEE, 0, 0)) i

TranslateMessage(&Msg); DispatchMcssage(&Msg); } return Msg.wParam;

ERESUET CALLBACK HelloWorldWndProc (HWND hWnd, UINT Message,

DINT wParam, LONG IParam ) !

HOC HUG;

PAINTSTRUCT PaintSlrucl; RECT Reel;

switch(Message)

i t

case WMJ'AINT:

hDC = BcginPaint(hWnd, &PaintStnict);

GctClicntRect(hWnd,&Rect);

DrawText (hDC,»Hello. World!», -1, &Rect,

DT_SINGLELINE i DE_CENTER j DT VCENTER);

EndPainUhWnd.&PamtStruct);

return 0; case WM_DF.STROY:

PostQuitMessagc(O),




Начало  Назад  Вперед



Книжный магазин