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

Вниз

Очистить все редакторы на форме...   Найти похожие ветки 

 
Дмитрий_05   (2005-09-14 20:24) [0]

У меня по событию нажатия кнопки открывается окно Form2.ShowModal, в нем заполняются Edit-ы и многое другое, потом при нажатии кнопки на второй форме все что было введено добавляется в программу, а сама форма закрывается... Потом при повторном ее открытии все Edit-ы и другое остаются заполненными... Так вот как мне на форме все эти компоненты очистить? Тупым перебором Edit1.Clear и т.д. или еще как-то можно?


 
AlexWlad ©   (2005-09-14 20:35) [1]

Исключительно ручками. Можно перебирать Components на форме и если Edit - чистить.


 
AlexWlad ©   (2005-09-14 20:36) [2]

В догонку - если форму убрать из автосоздающихся и криэйтить по требованию, тогда проблема исчезнет сама собой.


 
Дмитрий_05   (2005-09-14 21:00) [3]

Убрал я авто-создание второй формы в опциях проекта... при вызове второй формы делаю так:

Form2.Create(Form1);
Form2.ShowModal;
Form2.Free;

и перед тем как должна показаться форма выдается ошибка... что нетак?


 
Adder ©   (2005-09-14 21:48) [4]

Распространенная ошибка -)
Form2:=TForm2.Create(Form1);


 
Adder ©   (2005-09-14 21:51) [5]

Но лучше так:
Form2:=TForm2.Create(Application);


 
AlexWlad ©   (2005-09-14 21:52) [6]


> Form2.Create(Form1);


Вот не уверен я в этой строчке...
Скорее так

Form2 := TForm2.Create(...)
...


 
AlexWlad ©   (2005-09-14 21:53) [7]


> Adder ©   (14.09.05 21:48) [4]


Вах, нэ успэл!!!


 
Дмитрий_05   (2005-09-14 21:53) [8]

а... точно...))) Что-то я воовще ))) Спасибо!


 
TUser ©   (2005-09-15 10:57) [9]

От греха подальше
F:=TForm2.Create(Self);
try
F.ShowModal
finally
F.Free;
end;


 
ASoft   (2005-09-15 11:57) [10]

...
Application.CreateForm(Tform2, Form2);
Form2.ShowModal;
Form2.Free;
Form2:=nil
...

Из Edit"ов создай массив, затем перечислением очищай строки. Имхо.


 
KiBERMiKE   (2005-09-15 12:24) [11]

Очищает все TEdit на Form1

var
 i: Integer;
for i:= 0 to Form1.Controls - 1 do
 if Form1.Control[i].ClassName = "TEdit" then
   TEdit(Form1.Control[i]),Clear;


 
KiBERMiKE   (2005-09-15 12:27) [12]

Кое-что подправил....

Очищает все TEdit на Form1

var
i: Integer;
for i:= 0 to Form1.ControlCount - 1 do
if Form1.Controls[i].ClassName = "TEdit" then
  TEdit(Form1.Control[i]).Clear;



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

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

Наверх




Память: 0.49 MB
Время: 0.03 c
14-1127197758
Иксик
2005-09-20 10:29
2005.10.09
Эллочка-людоедочка


5-1102603997
AdmeraL
2004-12-09 17:53
2005.10.09
TclientSocket .... TserverSocket


2-1124860710
Sergo
2005-08-24 09:18
2005.10.09
Пользователь


2-1125231700
Иван Семенов
2005-08-28 16:21
2005.10.09
Как сохранить TColor в реестре?


9-1117533620
WandR
2005-05-31 14:00
2005.10.09
Пример воды на cg