Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MessageDlg


Anna ©   (2007-05-17 10:31:00) 

Господа!
MessageDlg('Сообщение', mtError, mbOK, 0);
Подскажите, пожалуйста:
возможно автоматически закрыть сообщение?
как на кнопке сообщения показать колличество секунд до его автоматического закрытия? --> OK [30]--> OK [29]...
Вместо mtError (и т.п.) можно показать свою картинку?


Leonid Troyanovsky   (2007-05-17 11:54:00) [1]


> Anna   (17.05.07 10:31)  

> как на кнопке сообщения показать колличество секунд до его
> автоматического закрытия? --> OK [30] --> OK [29] ...


type
 TForm1 = class(TForm)
   Button1: TButton;
   Timer1: TTimer;
   procedure Button1Click(Sender: TObject);
   procedure Timer1Timer(Sender: TObject);
 private
   { Private declarations }
   Timeout : Longint;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 Timeout := 10;
 Timer1.Enabled := True;
 MessageDlg('Welcome to my Object Pascal application.  Exit now?',
   mtConfirmation, [mbYes, mbNo], 0);
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
 b: TButton;
begin
  if Screen.ActiveForm.ClassNameIs('TMessageForm') then
    begin
       b := Screen.ActiveForm.FindComponent ('Yes') as TButton;
       dec(Timeout);
       if not Assigned(b) then
         begin
           (Sender as TTimer).Enabled := False;
           Exit;
         end;
         
       b.Caption :=  Format ('Yes [%d]', [Timeout]);
       if Timeout = 0 then
         Screen.ActiveForm.Close;
    end
  else
    (Sender as TTimer).Enabled := False;
end;


--
Regards, LVT.


Ega23   (2007-05-17 10:53:00) [2]

Напиши свой диалог. Не вижу никаких проблем.


Amoeba   (2007-05-17 10:33:00) [3]


> Господа!
> MessageDlg('Сообщение', mtError, mbOK, 0);
> Подскажите, пожалуйста:
> возможно автоматически закрыть сообщение?

Нельзя.


Наверх

Титульная страница Поиск, карта сайта Написать письмо