Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.01.30;
Скачать: [xml.tar.bz2];

Вниз

Edit   Найти похожие ветки 

 
Poha   (2005-01-20 07:12) [0]

Люди подскажите пожалуйста, как можно 50 Editов очистить в цикле???


 
Kerk ©   (2005-01-20 07:17) [1]

Поищи тему про заполнение 3x BitBtn.Caption в цикле. :)


 
Grinders   (2005-01-20 08:00) [2]

var i:integer;

for i:=0 to Self.ComponentCount-1 do
if (Self.Components[i] is TEdit) then
(Self.Components[i] is TEdit).Clear;


 
Grinders   (2005-01-20 08:01) [3]

Только в конце не
(Self.Components[i] is TEdit).Clear;
а
(Self.Components[i] as TEdit).Clear;


 
PZ   (2005-01-20 08:16) [4]

procedure TForm1.Button1Click(Sender: TObject);
Var
 Comp : tComponent;
 I : Integer;
begin
 For I := 0 to Form1.ComponentCount-1 do
   begin
     Comp := FindComponent("Edit"+ IntToStr(I));
     If Comp is tEdit then
       With Comp as tEdit do Text := "";
   end;
end;


 
Poha ©   (2005-01-20 08:40) [5]

Всем огромное спасибо :)


 
Style ©   (2005-01-20 09:04) [6]


> Comp := FindComponent("Edit"+ IntToStr(I));


Класс :)))


 
BiN ©   (2005-01-20 10:16) [7]

PZ   (20.01.05 08:16) [4]
...

    Comp := FindComponent("Edit"+ IntToStr(I));


- бредовая строка.

Нужно Comp := Components[i];


 
Alexander Panov ©   (2005-01-20 11:30) [8]

BiN ©   (20.01.05 10:16) [7]
- бредовая строка.


Ничего подобного, этот код совершенно верен.


 
BiN ©   (2005-01-20 12:24) [9]

Alexander Panov ©   (20.01.05 11:30) [8]

Ничего подобного, этот код совершенно верен.


Этот код абсурден. Допустим на форме лежит 4 контрола:

0) Edit1
1) Button1
2) Edit2

Тогда процедура из [4] очистит лишь Edit2. Да и экземпляры типа TEdit не обязательно могут иметь имена формата Editxx, где xx - целочисленное.


 
PZ   (2005-01-20 14:46) [10]

Дорогой товарищ BIN, Вы заблуждаетесь. Проверте свой пример. А мой пример отыщен ВСЕ компоненты tEdit, кроме, естественно, любых других.


 
PZ   (2005-01-20 14:57) [11]

Но пример, который дал Grinders лучше моего, так как он ищет все компоненты TEdit, независимо от их имени.


 
Kerk ©   (2005-01-20 15:08) [12]

PZ   (20.01.05 8:16) [4]
Код действительно бредовый. Здесь i - это не номер TEdit, а номер компонента ВООБЩЕ.


 
BiN ©   (2005-01-20 15:12) [13]

PZ   (20.01.05 14:46) [10]
Дорогой товарищ BIN, Вы заблуждаетесь. Проверте свой пример.


Да,действительно. Я сделал ошибочные выводы в своем примере. В моем примере Edit0 будет найден. Приношу свои извинения PZ и Панову.

А мой пример отыщен ВСЕ компоненты tEdit, кроме, естественно, любых других.

А вот с этим согласиться не могу. Таким ([4]) образом все равно не следует производить поиск. И дело не только в привязке к именам контролов; FindComponent внутри уже содержит цикл по всем элементам списка дочерних компонентов и является в нашем случае избыточным.

С уважением.


 
KADAN ©   (2005-01-20 15:19) [14]

в [4] изменить
 for I := 0 to Form1.ComponentCount-1 do
на
 for I := 1 to 50 do

:)



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

Форум: "Основная";
Текущий архив: 2005.01.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.039 c
1-1105652802
Gear
2005-01-14 00:46
2005.01.30
100% загрузка CPU бесконечным циклом в потоке.


1-1105731289
Gear
2005-01-14 22:34
2005.01.30
Сравить два массива.


14-1104946107
Дым
2005-01-05 20:28
2005.01.30
Как начать?


6-1099864447
Роман
2004-11-08 00:54
2005.01.30
Траффик и дозвон.


1-1105777062
WowaF
2005-01-15 11:17
2005.01.30
Чтение строки из файла через Stream





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский