
15.07.2012, 03:20
|
 |
LMD-DML
|
|
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
|
|
Наверное надо не Destroy, а Free т.к. в первом случае диалог не освобождается, а уничтожается  Вот такой варьянтик:
Код:
// обёртка под диалог, плюсы - с ним можно делать всё, что угодно
function MD(txt:string; mt: TMsgDlgType; mb: TMsgDlgButtons): integer;
begin
with CreateMessageDialog(txt, mt, mb) do
try
// Показать по центру формы:
Left:= Screen.ActiveForm.Left + (Screen.ActiveForm.Width - Width) div 2;
Top := Screen.ActiveForm.Top + (Screen.ActiveForm.Height-Height) div 2;
Result := ShowModal;
finally
Free;
end;
end;
{
Пример использования:
case MD('bla-bla-bla', mtWarning, mbOKCancel) of
mrOK : // ;
mrCancel : exit;
end;
Возможные варианты:
mt:= mtWarning, mtError, mtInformation, mtConfirmation, mtCustom
mb:= mbYesNoCancel, mbYesAllNoAllCancel, mbOKCancel, mbAbortRetryIgnore, mbAbortIgnore
}
|