Операционная система Microsoft Windows 3.1 для программиста -том 1


Приложение WSTYLE - часть 4


case WM_LBUTTONDOWN: { hdc = GetDC(hwnd); TextOut(hdc, 10, 40, "WM_LBUTTONDOWN", 14); ReleaseDC(hwnd, hdc); return 0; }

case WM_DESTROY: { PostQuitMessage(0); return 0; } } return DefWindowProc(hwnd, msg, wParam, lParam); }

// ===================================== // Функция ChildWndProc // Используется дочерним окном // =====================================

LRESULT CALLBACK _export ChildWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { HDC hdc; // индекс контекста устройства PAINTSTRUCT ps; // структура для рисования

switch (msg) { case WM_PAINT: { hdc = BeginPaint(hwnd, &ps); TextOut(hdc, 10, 20, "WM_PAINT", 8); EndPaint(hwnd, &ps); return 0; }

case WM_LBUTTONDOWN: { hdc = GetDC(hwnd); TextOut(hdc, 10, 40, "WM_LBUTTONDOWN", 14); ReleaseDC(hwnd, hdc); return 0; }

case WM_RBUTTONDOWN: { MessageBeep(-1); // звуковой сигнал return 0; } } return DefWindowProc(hwnd, msg, wParam, lParam); }

// ===================================== // Функция PopUpWndProc // Используется временным окном // =====================================

LRESULT CALLBACK _export PopUpWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { HDC hdc; // индекс контекста устройства PAINTSTRUCT ps; // структура для рисования

switch (msg) { case WM_PAINT: { hdc = BeginPaint(hwnd, &ps); TextOut(hdc, 10, 20, "WM_PAINT", 8); EndPaint(hwnd, &ps); return 0; }

case WM_LBUTTONDOWN: { hdc = GetDC(hwnd); TextOut(hdc, 10, 40, "WM_LBUTTONDOWN", 14); ReleaseDC(hwnd, hdc); return 0; } } return DefWindowProc(hwnd, msg, wParam, lParam); }

Приложение регистрирует три класса окна со следующими именами:

char const szMainClassName[] = "WStyleAppClass"; char const szChildClassName[] = "WStyleAppChildClass"; char const szPopUpClassName[] = "WStyleAppPopUpClass";

Первый класс с именем, записанным в массиве szMainClassName, используется для создания главного окна приложения и одного дополнительного перекрывающегося окна.




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



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