В данном уроке будут рассмотрены функции вывода сообщений. Сначала обсудим функцию MessageDlg (как более содержательную). Она используется для вывода на экран messagebox с неким сообщением и несколькими кнопками (Yes, No, OK и т. д.).
Параметры у этой функции следующие. Первый задает строку, которая будет показываться в нашем сообщении (Как и все строки в C++Builder, заключаем ее в двойные кавычки). Второй параметр определяет иконку на нашем Messagebox и сообщение в его заголовке. Возможные значения для этого параметра - mtConfirmation (Подтверждение), mtInformation (Сообщение), mtWarning (Предупреждение), mtError (Ошибка). Обратите внимание, что при записи любого из перечисленных значений Messagebox получит и соответствующий заголовок. Для этого параметра есть еще одно значение - mtCustom. Если использовать его, то никакой иконки в нашем messagebox не будет, а заголовок будет совпадать с именем exe-файла.
Третий параметр определяет кнопки, которые будут присутствовать на combobox. Вот некоторые из возможных значений: mbYes (кнопка Yes), mbNo (кнопка No), mbCancel (кнопка Cancel), mbOK (кнопка OK). Если кнопок несколько, то они объединяются посредством символов << (например, если мы хотим, чтобы присутствовало две кнопки Yes и No, то пишем << mbYes << mbNo). Так же необходимо написать ключевое слово TMsgDlgButtons(). Пример: TMsgDlgButtons() << mbYes << mbNo.
Последний, четвертый параметр - это идентификатор контекстной справки.
В качестве результата функции MessageDlg возвращает значение, информирующее о том, что за кнопку пользователь нажал в messagebox. Вот несколько возможных значений: mrYes, mrCancel, mrOK.
Пример использования функции MessageDlg:
if (MessageDlg("Закрыть приложение?", mtConfirmation, TMsgDlgButtons() << mbYes << mbNo,0) == mrYes)
{
Close();
}
В этом фрагменте у пользователя спрашивается, надо ли выходить из программы, и при положительном ответе программа закрывается.
Теперь обсудим функцию ShowMessage. У неё только один параметр - текст сообщения.
Пример:
ShowMessage(“Сообщение”);
Ничего тут особо интересного нет. Отметим, что эта функция используется для вывода простых сообщений, которые не требуют ответа от пользователя (типа Yes, No и т. д.).
Всё на этом урок закончен.