Четверг, 25.04.2024, 11:45
Приветствую Вас Гость
Меню сайта


Копилка для дальнейшего развития ресурса.
 
Форма входа
Интересное
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Программирование на Delphi.

Программирование

Главная » FAQ » Диалоги


uses
  ..., Consts;

function MessageDlgCtr(const Msg: string; DlgType: TMsgDlgType;
  Buttons: TMsgDlgButtons; HelpCtx: Longint): integer;
begin
  with CreateMessageDialog( Msg, DlgType, Buttons ) do
  try
  HelpContext := HelpCtx;
  Left := Screen.ActiveForm.Left + ( Screen.ActiveForm.Width div 2 ) - ( Width div 2 );
  Top := Screen.ActiveForm.Top + ( Screen.ActiveForm.Height div 2 ) - ( Height div 2 );
  Result := ShowModal;
  finally
  Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  MessageDlgCtr( 'Центрированный диалог', mtInformation, [mbOk], 0 );
end;




В обработчике событий напишите

var
  dlg_text:string;
  dlg_title:string;
begin
  dlg_text:='Это текст диалогового окна';
  dlg_title:='Это заголовок'ж
  if MessageBox(Application.Handle, PChar(dlg_text),
                        PChar(dlg_title), MB_YESNO+MB_ICONINFORMATION)=IDYES
  then ShowMessage('Вы нажали кнопку ДА!');
end;


Создайте новое приложение и исключите из него форму (Project|Remove from project). Далее измените модуль приложения:

Program top_window;

uses
   ExtCtrls,
   Windows;

begin
 
  //Ждем 10 секунд
  sleep(10000);

  //Выводим сообщение
  MessageBox(0, 'Вам сообщение!', 'Внимание', MB_OK or MB_ICONERROR or MB_SYSTEMMODAL);

  //Выходим
  Exit;
end.