Данная функция более универсальная, чем процедура ShowMessage.
Она позволяет поместить в окно с сообщением один из стандартных знач-
ков, например «Внимание», задать количество и тип командных кнопок и
определить, какую из кнопок нажал пользователь. Значение функции – это
число, проверив которое, можно определить, выбором какой командной
кнопки бал завершен диалог. Общий вид функции:
MessageDlg(const Msg: string; AType: TMsgDlgType; AButtons:
TMsgDlgButtons; HelpCtx: Longint): Word
Здесь Msg – строка, содержащая сообщение; AType – тип окна, прини-
мающий значения из табл. 3.2; A Buttons – список кнопок (табл. 3.3),
отображаемых в окне сообщения, может содержать одну либо несколько
кнопок (именованных констант), перечисленных через запятую и заклю-
ченных в квадратные скобки []; HelpCtx – параметр, определяющий раздел
справочной системы, который появится при нажатии на кнопку F1. Ес-
ли вывод справки не предусмотрен, значение параметра равно нулю.
Таблица 3.2. Типы окон функции MessageDlg
Например, для того чтобы в окне сообщения появились кнопки ОК и
Cancel, список должен быть таким: [ mbOk , mbCancel]
Таблица 3.3. Набор кнопок функции MessageDlg
При нажатии любой из указанных кнопок (кроме кнопки Help) диало-
говое окно закрывается, а результат (значение ModalResult) возвращается
функцией MessageDlg.
Например, диалоговое окно рис. 3.3 будет
выведено на экран с помощью оператора:
res:=MessageDlg('Неправильная дата'+
#13#10 + 'Исправить?', mtError, [mbOK,
mbNo], 0);
Переменная res получит значение mrOK, если
будет нажата клавиша OK, и значение mrNo, ес-
ли будет нажата клавиша No.
Рис. 3.3. Результат работы функции MessageDlg
|