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

Вниз

Edit1...Editx - как обратиться к нужному компоненту?   Найти похожие ветки 

 
guest_Dmitry   (2003-11-09 07:31) [0]

На форме имеется порядка 40 Edit"ов.
Можно ли в цикле обратиться к нужному компоненту, напрмер
Edit[i].visible := false??
Заранее благодарен.


 
Dmitry   (2003-11-09 08:04) [1]

Задай для удобства каждому едиту свойство Tag равное его номеру, по нему и будешь искать.
А дальше:

for i:=0 ComponentCount-1
do
if Components[i] is TEdit
then
if (Components[i] as TEdit).Tag="здесь нужный номер"
then
(Components[i] as TEdit).Visible:=False;


 
Dmitry   (2003-11-09 08:06) [2]

P.S. А вобще в качестве параметра для поиска можешь использовать все что угодно: цвет, размеры, имя и т.д.


 
Viktor Kushnir   (2003-11-09 08:12) [3]

Строку (Components[i] as TEdit). можно упростить до TEdit(Components[i]).


 
Anatoly Podgoretsky   (2003-11-09 10:45) [4]

guest_Dmitry (09.11.03 07:31)
Что бы так обращаться требуется создать массив Edit


 
guest_Dmitry   (2003-11-09 10:55) [5]

Спасибо всем.
Получилось как подсказал Viktor Kushnir:
TEdit(Components[i]).Visible := false


 
Anatoly Podgoretsky   (2003-11-09 10:59) [6]

Чрезвычайно опасное решение, было же более менее безопасное (Components[i] as TEdit).


 
guest_Dmitry   (2003-11-09 11:02) [7]

Чем грозит такое решение?


 
Anatoly Podgoretsky   (2003-11-09 11:08) [8]

Многим, например крахом программы. Такое можно делать только в случае когда имеется твердая уверенность, что Components[i]) совместим с TEdit, то есть либо он сам либо наследник.


 
guest_Dmitry   (2003-11-09 11:11) [9]

Ясно, попробую использовать другой вариант.



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

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

Наверх





Память: 0.45 MB
Время: 0.011 c
3-65703
SasaR
2003-10-30 10:39
2003.11.20
Yaffi Personal


3-65728
sasasasa
2003-11-01 23:02
2003.11.20
Interbase API


1-65913
abs
2003-11-08 02:11
2003.11.20
Как перевести 8-ми байтное число типа Double?


3-65779
Ozone
2003-10-29 12:03
2003.11.20
Использование ADO в своих приложениях


14-66100
servs
2003-10-28 14:47
2003.11.20
чисто академическая задача по алгоритмам





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