4. Следующий за этим блок кода, обрабатывающий событие прорисовки формы, приведен в листинге 4.15. Листинг 4.15
case WM_PAINT:
RECT rt;
hdc = BeginPaint(hWnd, &ps);
GetClientRect(hWnd, &rt);
FillRect(hdc, &rt, CreateSolidBrush(0xFFFF00));
//LoadString(g_hInst, IDS_HELLO, szHello, MAX_LOADSTRING);
//DrawText(hdc, szHello, _tcslen(szHello), &rt,
//DT_SINGLELINE | DT_VCENTER | DT_CENTER);
EndPaint(hWnd, &ps);
break;Следует обратить внимание на закомментированные строки. Это именно то изменение, которое нужно внести в код. Переведя эти строки в состояние комментария, можно предотвратить вывод на форму надписи «Hello, Word!». Добавленный в код метод FillRect закрашивает ее в цвет Magenta. Теперь нужно скомпилировать проект и запустить его. Результат выполнения программы показан на рис. 4.5.
Стоит заметить, что две нижние кнопки в правом ряду можно перетаскивать при помощи мыши. 5. Внимательно расмотрев код, можно понять, что, несмотря на разницу в поведении и внешнем виде, практически все кнопки были созданы одной и той же функцией CreateWindow. Правый ряд кнопок был создан при помощи усовершенствованного варианта этой функции CreateWindowEx.
HWND CreateWindow(
LPCTSTR lpClassName,
LPCTSTR lpWindowName,
DWORD dwStyle,
int x,
int y,
int nWidth,
int nHeight,
HWND hWndParent,
HMENU hMenu,
HANDLE hInstance,
PVOID lpParam);