Операционная система Microsoft Windows 3.1 для программиста© Александр Фролов, Григорий ФроловТом 11, М.: Диалог-МИФИ, 1993, 269 стр. 2.5. Функция окна приложения TEXTOUTОтложим описание деталей вывода текста, связанное с изменением шрифтов и других параметров текста, и вернемся к функции окна приложения TEXTOUT (листинг 2.7). Эта функция выводит текст при получении сообщений WM_PAINT, WM_LBUTTONDOWN и WM_RBUTTONDOWN. Когда функция окна получает сообщение WM_PAINT, фон окна закрашивается кистью, определенной при регистрации класса окна, и начиная с точки с логическими координатами (10, 20) выводится строка "Сообщение WM_PAINT". Если вы установите курсор мыши в главное окно приложения и будете нажимать левую или правую клавишу мыши, в функцию окна будет посылаться соответственно сообщение WM_LBUTTONDOWN или WM_RBUTTONDOWN. По первому сообщению в точке (10, 40) будет выведена строка "Сообщение WM_LBUTTONDOWN", по второму - в точке (10, 60) будет выведена строка "Сообщение WM_RBUTTONDOWN" (рис. 2.2).
Рис. 2.2. Главное окно приложения TEXTOUT Если вы при помощи рамки измените размер главного окна, уменьшив, а затем немного увеличите его, первая строка, выведенная по сообщению WM_QUIT, будет восстановлена полностью. Остальные строки могут исчезнуть целиком или частично, в зависимости от того, остались ли они в окне при уменьшении размера окна (рис. 2.3).
Рис. 2.3. Исчезновение строк при изменении размера окна Если бы все строки выводились только при обработке сообщения WM_PAINT, в случае частичного или полного перекрытия окна другими окнами изображение было бы полностью восстановлено. |