Окна сообщений используются
для привлечения внимания пользователя. При помощи окна сообщения программа может,
к примеру, проинформировать об ошибке в исходных данных или запросить подтверждение
выполнения необратимой операции, например, удаления файла.
Вывести на экран окно
с сообщением можно при помощи процедуры ShowMessage или функции MessageDlg.
Процедура ShowMessage
выводит на экран окно с текстом и командной кнопкой ОК.
В общем виде инструкция
вызова процедуры ShowMessage выглядит так:
ShowMessage(Сообщение);
где сообщение — текст,
который будет выведен в окне.
На рис. 1.7 приведен
вид окна сообщения, полученного в результате выполнения инструкции:

Рис. 1.7. Пример окна сообщения
Следует обратить внимание
на то, что в заголовке окна сообщения, выводимого процедурой ShowMessage, указано
название приложения, которое задается на вкладке Application окна Project
Options. Если название приложения не задано, то в заголовке будет имя исполняемого
файла.
Функция MessageDig
более универсальная. Она позволяет поместить в окно с сообщением один из стандартных
значков, например "Внимание", задать количество и тип командных кнопок
и определить, какую из кнопок нажал пользователь. На рис. 1.8 приведено окно,
выведенное в результате выполнения инструкции

Рис. 1.8. Пример окна сообщения
Значение функции MessageDlg
— число, проверив значение которого, можно определить, выбором какой командной
кнопки был завершен диалог.
В общем виде обращение
к функции MessageDig выглядит так:
Выбор: = MessageDlg(
Сообщение, Тип, Кнопки, КонтекстСправки)
где:
- Сообщение — текст сообщения;
- Тип — тип сообщения. Сообщение
может быть информационным, предупреждающим или сообщением о критической ошибке.
Каждому типу сообщения соответствует определенный значок. Тип сообщения задается
именованной константой (табл. 1.8);
Кнопки — список кнопок,
отображаемых в окне сообщения. Список может состоять из нескольких разделенных
запятыми именованных констант (табл. 1.9). Весь список заключается в квадратные
скобки.
| Константа | Тип сообщения | Значок |
| mtWarning | Внимание | ![]() |
| mtError | Ошибка | ![]() |
| mt Information | Информация | ![]() |
| mtConfirmation | Подтверждение | ![]() |
| mtCustom | Обычное | Без значка |
| Константа | Кнопка | Константа | Кнопка |
| mbYes | Yes | mbAbort | Abort |
| mbNo | No | mbRetry | Retry |
| mbOK | OK | mblgnore | lgnore |
| mbCancel | Cancel | mbAll | All |
| mbHelp | Help |
Например, для того
чтобы в окне сообщения появились кнопки ОК и Cancel, список Кнопки
должен быть таким:
[mbOK,mbCancel]
Кроме приведенных констант
можно использовать константы: mbokcancel, mbYesNoCancel и mbAbortRetryIgnore.
Эти константы определяют наиболее часто используемые в диалоговых окнах комбинации
командных кнопок.
контекстСправки —
параметр, определяющий раздел справочной системы, который появится на экране,
если пользователь нажмет клавишу <F1>. Если вывод справки не предусмотрен,
то значение параметра КонтекстСправки должно быть равно нулю.
Значение, возвращаемое
функцией MessageDig (табл. 1.10), позволяет определить, какая из командных кнопок
была нажата пользователем.
| Значение функции MessageDig | Диалог завершен нажатием кнопки |
| mrAbort | Abort |
| mrYes | Yes |
| mrOk | Ok |
| mrRetry | Retry |
| mrNo | No |
| mrCancel | Cancel |
| mrIgnore | Ignore |
| mrAll | All |



















