Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.042 c
3-1125374821
Ярослав
2005-08-30 08:07
2005.10.09
Как получить id всех соединений с БД в текущий момент


1-1127137241
all
2005-09-19 17:40
2005.10.09
подскажите как узнать список папок


3-1124381261
White_
2005-08-18 20:07
2005.10.09
Как копировать экземпляр TIBQuery?


3-1125041082
ААР
2005-08-26 11:24
2005.10.09
Описание таблицы Btrieve


14-1126006066
A.L.I.E.S
2005-09-06 15:27
2005.10.09
Кто и где работает самый лучший программист




   Наверх