Главная страница
    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.48 MB
Время: 0.032 c
1-1106083974
Ira
2005-01-19 00:32
2005.01.30
Как удалить Panel с формы во время выполнения проги?


1-1105818520
Knoxville
2005-01-15 22:48
2005.01.30
Как узнать значение св-ва Enabled элемента Tshape, зная его Tag


14-1105304252
Fin
2005-01-09 23:57
2005.01.30
Снежный человек!


1-1106063087
rolex
2005-01-18 18:44
2005.01.30
Как отловить сообщение о восстановлении/разворачивании окна?


14-1105435700
Ozone
2005-01-11 12:28
2005.01.30
Как узнать модель телефона.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский