Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.16;
Скачать: CL | DM;

Вниз

Автоматически уничтожаемое окно   Найти похожие ветки 

 
konstantinov ©   (2004-05-01 00:06) [0]

Как создать и через какое-то время уничтожить окно?

Пробовал:
procedure ShowMSG ( const MSG : string );
 var Form : TForm;
     L : TLAbel;
begin
 Application.CreateForm(TForm,Form);
 L := TLabel.Create(Form);
 L.Parent := Form;
 L.Caption := MSG;
 Form.FormStyle := fsStayOnTop;
 Form.Show;
 Sleep(5000);
 PostMessage(Form.Handle,WM_CLOSE,0,0);  
 Form.Free;
end;

окно есть, текста нет. Окно не на что не реагирует.

ставлю ShowModal;

текст есть, но окно не уничтожается.

Заранее спасибо.


 
R   (2004-05-01 06:36) [1]

1.Поставь после Show -  Application.ProcessMessages и
текст отрисуется.
2.Sleep-потоку не дается процессорная обработка вот и нет
реакции
3.Используй таймер или что то в этом роде
procedure Sleep_Ex ( const Int:Integer );
var
I:Integer;
begin
For I:=0 To Int Do begin
Sleep(100);
 Application.ProcessMessages;
end;
end;
4.ShowModal приостановит дальнейшее выполнение процедуры,
следовательно уничтожать надо не вданной процедуре,
а например в OnTimer


 
Mim1 ©   (2004-05-01 10:15) [2]

PostMessage(Form.Handle,WM_CLOSE,0,0);  
Form.Free;

На момен уничтожения окна сообщение не отработает. Проще вызвать form.hide; form.free;



Страницы: 1 вся ветка

Текущий архив: 2004.05.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.035 c
1-1083334497
Smirnoff
2004-04-30 18:14
2004.05.16
как в конце строки удалить символ перевода стоки?


11-1069017691
Deimos
2003-11-17 00:21
2004.05.16
Как узнать во что переименован файл?


3-1082460803
Fishka
2004-04-20 15:33
2004.05.16
DBCtrlGrid и поиск


14-1083006156
ЧупаЧупс
2004-04-26 23:02
2004.05.16
Оформление


3-1082369428
Vit
2004-04-19 14:10
2004.05.16
Не могу понять в чем ошибка