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


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


/p>

Четвертый и пятый аргументы - это wParam и IParam посылаемого со­общения. Для каждого сообщения они определяются отдельно. Надеюсь, что читатель разобереться с параметрами этих сообщений самостоятель­но по файлам помощи. Состояния кнопок имеют идентификаторы, начинающиеся с BST_ (табл. 22).

После того, как мы разобрали функцию SendDigIteinMessage(), все ос­тальное в программе вызывать каких-либо трудностей не должно.

Окно сообщений

Но возникает вопрос: неужели же даже для простейших действий, на­пример, для запроса подтверждения о необходимости удаления файла, необходимо писать функцию диалогового окна? Ответ очевиден: нет, не нужно. Для решения этих вопросов вполне достаточно гак называемого окна сообщений.

116

Окно сообщений, которое мы неоднократно использовали, является простейшим типом диалогового окна. Его назначение определяется его названием. Ни для чего другого, кроме вывода сообщения пользователю и предложения нажать одну из имеющихся кнопок, эти окна не предна­значены. Тем не менее, работу с этим типом диалогов я хотел бы рас­смотреть очень подробно, так как она очень часто используется не только для выдачи сообщений пользователю, но и для отладки. Функция, с помощью которой создастся окно сообщений, называется MessageBoxQ.

В файле winuser.h эта функция описана следующим образом:

WINUSERAPI int WINAPI McssagcBoxA(HWND hWiid. LPCSTR IpTcxt,

LPCSTR IpCaption, UINT uTypc);

WINUSERAPI int WINAPI MessageBoxW(HWND liWnd . LPCWSTR IpText,

LPCWSTR IpCaption, UINT uTypeV

#ifdcfUNICODE

#define MessageBox MessageBoxW

#clse

#defmc MessageBox McssaucBoxA

#cndi(7/ IUNICODF.

Первый аргумент этой функции - liWnd - хэндл родительского окна, т. е. того окна, которому будут посылаться сообщения от окна сообщений (извините меня, уважаемый читатель, за тавтологию. В данном случае я прошу не путать окно сообщений   ДЛЯ ПОЛЬЗОВАТЕЛЯ с сообщения­ми ДЛЯ ОКОН). Второй аргумент - IpText - указатель на строку, содер­жащую отображаемый внутри окна текст. Перед отображением этот текст может быть отформатирован с помощью функции sprintfQ. Третий аргу­мент - IpCaption -заголовок окна сообщений. (Мне, например, исполь­зующему окна сообщений в основном для вывода отладочных сообще­ний, нравится давать окну заголовки типа «Hurray!» или «At last...».) Четвертый аргумент - иТуре - определяет тип окна сообщений, т. е.: перечень кнопок, отображаемых в окне сообщений; иконку, отображаемую в окне сообщений; кнопку, считающуюся кнопкой по умолчанию; модальность окна сообщений.




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



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