Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.24;
Скачать: CL | DM;

Вниз

Свойства компонента   Найти похожие ветки 

 
Checist [root]   (2003-07-12 02:26) [0]

Вот есть у меня форма Form1. На ней компонент PageControl1 (вроде так называется). У него имеется 5 страниц (TabSheet). На каждой из них по одному ListBox"у. Также на форме имеется еще FileListBox и кнопка Button1 (все по 1, не относятся к PageControl1). Как мне при нажатии кнопки Button1 внести в ListBox, находящийся на активной странице PageControl"а, выделенный в FileListBox"е итем. ! Не используя имени самого ListBox"а - точнее его номер ! Я пытаюсь обращаться через Form1.Components[i] - и все в таком духе. Подскажите как быть!


 
Германн ©   (2003-07-12 02:39) [1]

У TPageControl есть свойство ActivePage = TTabSheet. Там и ищи ListBox.


 
Checist [root]   (2003-07-12 02:45) [2]

Именно так и пытаюсь. Даже вот это не работает.
Form1.PageControl1.ActivePage.ComponentCount
Выдает 0, хотя там несколько компонентов. Как быть?
Если можно напиши хотя бы просто соурс обращения к ListBox"у активной страницы.


 
MikeZ ©   (2003-07-12 02:48) [3]

Попробуй так:
(FindComponent("ListBox"+IntToStr(PageControl1.ActivePageIndex+1)) as TListBox).Items.Add(FileListBox1.Items.Strings[FileListBox1.Itemindex]);
З.Ы. Только учти, что TabSheet"ы нумеруются с нуля, а ListBox"ы - с единицы, если только ты их не переименовывал.


 
MikeZ ©   (2003-07-12 02:49) [4]

А когда начинал писать, то ответов еще не было ;-)


 
Checist [root]   (2003-07-12 02:56) [5]

Спасибо, попробую. <еще не было !>


 
Юрий Зотов ©   (2003-07-12 03:21) [6]

> Checist [root] (12.07.03 02:45)

Form1.PageControl1.ActivePage. Control Count

И Controls[i].

А ComponentCount и Components[i] не проходит из-за того, что владельцем (Owner) всех компонентов, положенных на форму в design-time, является сама форма. А никакие не TabSheet"ы.

Поэтому пройдет еще и такой вариант:

with Form1 do
for i := 0 to ComponentCount - 1 do
if (Components[i] is TListBox) and
TListBox(Components[i]).Parent = PageControl1.ActivePage then ...



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

Текущий архив: 2003.07.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.014 c
1-77980
Виталик
2003-07-10 20:26
2003.07.24
Перемещение формы с BorderStyle=bsNone


1-77948
Мефодий
2003-07-09 21:15
2003.07.24
Проблема с кириллицей в контролах на Windows XP


14-78130
Председатель
2003-07-06 10:58
2003.07.24
Мисс Delphi


9-77712
R2D2
2003-02-03 09:04
2003.07.24
GLScene - Свойство линии loUseNodeColorForLines


1-77855
Navi
2003-07-12 08:57
2003.07.24
CharSet