![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
про Edit [D7, XP]
MIXER © (2006-02-15 14:47:00)на форме много Editов. вводятся числа, совершается работа.потом
мужно очистить все Editы для ввода новых данных.
есть ли общая процедура типа Form1.allEdit.text=' ' или для каждого нужно писать отдельно
Ega23 (2006-02-17 14:46:00) [1]
> Только не говори, что этим вообще нельзя
Дык и гланды через задницу можно доставать. А смысл?
КаПиБаРа (2006-02-17 14:30:00) [2]Неуверенный (17.02.06 14:25) [13]
Можно. Однако вопрос вполне логичный.
Неуверенный (2006-02-17 14:25:00) [3]
> Ega23 © (15.02.06 15:14) [4]
>
> > Или FindwindowEx
>
>
> Это-то нафига???
Только не говори, что этим вообще нельзя
Vlad (2006-02-15 18:59:00) [4]
> Ega23 © (15.02.06 18:55) [11]
> Здесь ты не прав. Не путай ControlCount с ComponentCount
Да, тут ошибочка
Ega23 (2006-02-15 18:55:00) [5]
> Тоже самое. Это справедливо только для случая, когда все
> Edit-ы лежат на форме. Если один лежит на TPanel (к примеру),
> то он не очистится.
>
> Я думаю, рекурсивная функция поможет.
>
Здесь ты не прав. Не путай ControlCount с ComponentCount
Vlad (2006-02-15 18:13:00) [6]
> mr. Den (15.02.06 18:05) [8]
а если parent у кнопки - TPanel ? А она в свою очередь вложена в еще несколько?
> MIXER (15.02.06 16:01) [5]
> var
> i: Integer;
> begin
> with form do
> for i := 0 to ComponentCount - 1 do
> if (Components[i] is TEdit) then
> (Components[i] as TEdit).Text := '';
>
> во как!!!!
Тоже самое. Это справедливо только для случая, когда все Edit-ы лежат на форме. Если один лежит на TPanel (к примеру), то он не очистится.
Я думаю, рекурсивная функция поможет.
Ega23 (2006-02-15 18:07:00) [7]
> А если так вот ? :)
Не получится. Точнее, не всегда будет работать.
Пример:
Форма, на ней панель, на ней ещё две панели, на каждой панели - 100 эдитов.
mr. Den (2006-02-15 18:05:00) [8]
> Ega23 © (15.02.06 16:16) [7]
>
> > with form do
>
>
> Ну и как только объект будет называться не form, то, естественно,
> ничего не получится.
А если так вот ? :)
procedure TForm1.Button1Click(Sender: TObject);
var i : integer;
begin
for i:=0 to (sender as TControl).Parent.ControlCount - 1 do
if (sender as TControl).Parent.Controls[i].InheritsFrom(TEdit) then
TEdit((sender as TControl).Parent.Controls[i]).Text := '';
end;
Ega23 (2006-02-15 16:16:00) [9]
> with form do
Ну и как только объект будет называться не form, то, естественно, ничего не получится.
Stakan (2006-02-15 16:09:00) [10]
> (Components[i] as TEdit)
TEdit(Components[i])
Вот так лучше
MIXER (2006-02-15 16:01:00) [11]var
i: Integer;
begin
with form do
for i := 0 to ComponentCount - 1 do
if (Components[i] is TEdit) then
(Components[i] as TEdit).Text := '';
во как!!!!
Ega23 (2006-02-15 15:14:00) [12]
> Или FindwindowEx
Это-то нафига???
КаПиБаРа (2006-02-15 14:58:00) [13]Что то глючит яндекс
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1139820130&n=0&p=1
Неуверенный (2006-02-15 14:53:00) [14]Может, Findcomponent?
Или FindwindowEx
А там еще кнопка F1 есть...
КаПиБаРа (2006-02-15 14:53:00) [15]http://www.yandex.ru/yandsearch?text=Delphi+Edit+%EE%F7%E8%F1%F2%E8%F2%FC&stype=www