Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции -Процедурное программирование в Windows.doc
Скачиваний:
13
Добавлен:
13.09.2019
Размер:
742.91 Кб
Скачать

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

Окно сообщений предназначено для вывода на экран только одного сообщения.

Окно сообщения ( message box ) – это простейшее диалоговое окно , для использования которого необходимо вызвать функцию Messagebox . Формат вызова этой функции приведен ниже :

nItem = Messagebox ( hParentWnd, lpszText, lpszCaption, nType );

Первый параметр функции содержит индекс родительского окна. При закрытии окна сообщений фокус ввода будет передан родительскому окну. Если вы вызываете функцию Messagebox из диалогового окна, то первый параметр функции должен быть равен дескриптору диалогового окна. Если вы не указываете дескриптор диалогового окна, то первый параметр должен быть равен NULL.

Второй параметр – lpszText – содержит дальний указатель на строку символов, оканчивающуюся нулем, которая отображается внутри окна сообщений. При необходимости Windows будет разбивать выводимый текст на несколько строк. Вы можете также сами использовать символы перевода строки и возврата каретки.

Третий параметр – lpszCaption – либо дальний указатель на строку, содержащую заголовок окна сообщений, либо NULL. Во втором случае заголовок окна сообщений содержит надпись Error.

Последний параметр функции – nType – содержит набор флагов, объединенных при помощи булевой операции « или ».

Существует несколько групп флагов, которые можно использовать в этом параметре :

Флаги возможных действий

Флаги MB_OK, MB_OKCANCEL, MB_YESNO, MB_YESNOCANCEL, MB_RETRYCANCEL и MB_ABORTRETRYIGNORE определяют , какие кнопки будут отображаться в окне сообщений и, следовательно, какие действия пользователь может предпринять при появлении окна сообщений. Возвращаются значения : IDOC, IDCANCEL, IDYES, IDNO, IDRETRY и IDABORT.

Флаги определения типа кнопок

Задают тип кнопок, которые будут отображены в окне сообщения. Возможные значения – MB_DEFBUTTON1, MB_DEFBUTTON2 И MB_DEFBUTTON3.

Флаги определения стандартных пиктограмм

Определяют, какую стандартную пиктограмму следует отобразить в окне сообщений. Можно использовать один из следующих флагов: MB_ICONASTERISK, MB_ICONEXCLAMATION, MB_ICONHAND и MB_ICONQUESTION.

Класс модальности

Указав одно из двух возможных значений MB_APPLMODAL и MB_SYSTEMMODAL – вы определите, является окно сообщений модальным или системным. По умолчанию установлен флаг MB_APPLMODAL.

Флаг отказа от фокуса ввода

Флаг MB_NOFOCUS используется в том случае, если вы не хотите, чтобы окну сообщения был передан фокус ввода.

Все описанные выше флаги определены в файле windows.h.

Пример использования функции MessageBox:

MessageBox ( hWnd, «Command not implemented», «Edit», MB_ICONASTERISK | MB_OK );

Ввод данных

Для вывода данных на экран используются обычно статические поля или редактируемые поля.

Вывод числовых данных аналогичен выводу текста, но в начале числовые данные помещаются в символьный массив с помощью функции sprintf(), а затем выводятся в соответствующее окно с помощью функции

SetDlgItemText ( hDlg, nID, szString ),

где

hDlg – дескриптор диалогового окна;

nID – идентификатор органа управления;

szString – указатель на выводимую символьную строку.