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

Вниз

Срочно нужна помощь!!!   Найти похожие ветки 

 
ДмитрийК.   (2002-12-20 22:56) [0]

Уважаемые Господа!
Возникла проблема, с которой как-то раз справлялся, а теперь хоть головой об стол
бейся, не могу вспомнить как. Ниже привожу кусок кода, принципиально показывающий
проблему. Как при нажатии Button1, в середине процедуры остановиться и подождать, пока
не закроется Form2, а потом продолжить выполнение?




unit Unit1;
...

uses
...Unit2;

type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
....
end;

var
Form1: TForm1;
N:byte;

.....

procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Visible:=true;
{В этом месте нужно дождаться закрытия Form2}
Label1.Caption:= inttostr(n);
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
N:=1;
end;

end.




unit Unit2;
....

type
TForm2 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form2: TForm2;
......
uses Unit1;

procedure TForm2.Button1Click(Sender: TObject);
begin
N:=N+1;
close;
end;

end.


 
Юрий Зотов ©   (2002-12-20 23:18) [1]

Вариант 1.

procedure TForm1.Button1Click(Sender: TObject);
begin
with TForm2.Create(nil) do
try
ShowModal
finally
Free
end;
Label1.Caption := IntToStr(N)
end;


Вариант 2.

procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Show;
while Form2.Visible do Application.ProcessMessages;
Label1.Caption := IntToStr(N)
end;

Вариантов еще много. Все зависит от того, что именно требуется.



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

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

Наверх




Память: 0.47 MB
Время: 0.006 c
1-1813
id_privin
2002-12-20 17:08
2003.01.02
Два потока пользовательского интерфейса


1-1825
ДмитрийК.
2002-12-20 22:56
2003.01.02
Срочно нужна помощь!!!


1-1788
Ospa
2002-12-20 13:26
2003.01.02
FileRead


14-1905
mikl2002
2002-11-28 07:34
2003.01.02
FIBPlus 4.77


6-1851
X-shadow
2002-11-05 06:16
2003.01.02
Вопрос про WinSock и отправку письма.