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

Вниз

Вопрос про Object Inspector и parent   Найти похожие ветки 

 
cosinus   (2009-12-19 14:02) [0]

Столкнулся с непонятной для меня ситуацией.
Задача: пройтись по всем компонентам, расположенным на одной из панелей (частный случай), которые (судя по Object Inspector) там находятся.
На форме есть панель, на панели PageList, на Page1 расположен GroupBox, а уже на нем в свою очередь куча всяких контролов. Все создавалось в DisignTime, киданием компонентов и установкой их свойств.
В зависимости от условия, мне нужно было выставить Enabled всех Edit-ов, расположенных на GroupBox в True или False.
Обхожу все компоненты на GroupBox - пусто.
Выше на уровень - снова пусто.
Какие-то компоненты проявились только на панели, причем совершенно левые из серии "как бог на душу положит".
Правильно ли я понимаю, что то дерево, которое отображается в Object Inspector не имеет никакого отношения, к реальному положению дел - "кто чей parent"?
Если так, то возможно ли выставить это как-нибудь? кроме как создавать контролы в RunTime, указывая Parent? Или (TControl as что-нибудь).Components[i] вообще к Parent не имеет отношения?

Какая-то разруха в мозгах... Разделите мне мух от котлет, пожалуйста...


 
Юрий Зотов ©   (2009-12-19 17:13) [1]

Есть список Components - он отвечает за то, кто чей Owner. Если компоненты накидывались в design-time, то владельцем всех будет форма (а никакие не панели и не группбоксы).  

Есть список Controls - он отвечает за то, кто чей Parent (кто на ком лежит). Вот он Вам и нужен.

for i := 0 to GroupBox1.ControlCount - 1 do
 if GroupBox1.Controls[i] is TEdit then
   GroupBox1.Controls[i].Enabled := false;


 
cosinus   (2009-12-20 10:56) [2]

Спасибо, теперь все встало на свои места.



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

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

Наверх





Память: 0.45 MB
Время: 0.007 c
9-1183470560
THandle
2007-07-03 17:49
2010.02.21
DirectX


6-1212600148
Real
2008-06-04 21:22
2010.02.21
TWebBrowser - организовать preview html-кода


2-1260982099
recop
2009-12-16 19:48
2010.02.21
StateImages в ListView


2-1260189361
Б
2009-12-07 15:36
2010.02.21
Окно по центру экрана.


2-1261259931
Б
2009-12-20 00:58
2010.02.21
Чёрно-белой растр.





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