Главная страница
    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.044 c
14-1105527640
Dimir
2005-01-12 14:00
2005.01.30
mdac typ.exe


1-1105957994
glGLU
2005-01-17 13:33
2005.01.30
MessageDlg


6-1099919063
syte_ser78
2004-11-08 16:04
2005.01.30
Мониторинг доступа к расшареной папке


1-1105613795
pavel_guzhanov
2005-01-13 13:56
2005.01.30
Как остановить работающую программу?


1-1105513028
leonidus
2005-01-12 09:57
2005.01.30
Контекстный переход внутри chm-справки





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