Тема: MessageDlg
Показать сообщение отдельно
  #2  
Старый 27.03.2009, 12:31
BloodFooria BloodFooria вне форума
Новичок
 
Регистрация: 30.10.2008
Адрес: Улан-Удэ
Сообщения: 81
Репутация: 10
По умолчанию

Вот так:

Код:
var Qst : Integer;

begin
  Qst:= MessageDlg('Бла-бла-бла...',MtConfirmation,[MbYes,MbNo],0);
  case Qst of
    MrYes: ;// Действие при нажатии на "Да"
    MrNo: ;// Действие при нажатии на "Нет"
  end;
end;

Если тебе нужно произвести действие при нажатии на одну кнопку (а остальные не важны), то так:

Код:
if MessageDlg('Бла-бла-бла...',MtConfirmation,[MbYes,MbNo],0) = MrYes
  then // И тут уже действие

Альтернатива MessageDlg: MessageBox - он удобнее и красивее.

Например:

Код:
var Qst : Integer;

begin
  Qst:= Application.MessageBox('Бла-бла-бла...','Ошибка',MB_YESNO + MB_ICONERROR);
  case Qst of
    idYes: ;// Действие при нажатии на "Да"
    idNo: ;// Действие при нажатии на "Нет"
  end;
end;

MB_ICON.... - это имя иконки и звука (MessageBeep). Значение: MB_ICONERROR, MB_ICONWARNING, MB_ICONINFORMATION, MB_ICONQUESTION.

Кнопки: MB_OK, MB_YESNO, MB_YESNOCANCEL, MB_OKCANCEL, MB_RETRYCANCEL, MB_ABORTRETRYIGNORE.

А я вообще написал собственный MessageBox, и через него вызываю все сообщения
Ответить с цитированием