![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Twincontrol.Controlscount
denis24 © (2004-11-24 12:30:00)Создаю в скролбаре кнопки (button1,button2,button3.....),потом удаляю некоторые из них.
Затем на их место опять хочу вставить новые
Но когда прохожу циклом по всем контролам что бы определить где свободное место
for i:=0 to frm1.ScrollBox3.ControlCount-1 do
if strtoint(copy((frm1.ScrollBox3.Controls[i] as TButton).name,8,2))<>i+1
У меня смещается эта i относительно имени кнопки(button1,button2button3.....).
Вопрос ,Как отслеживать это controls[I],чтобы получать номер освободившегося места?
clickmaker (2004-11-24 13:49:00) [1]
> if strtoint(copy((frm1.ScrollBox3.Controls[i] as TButton).name,8,2))<>i+1
>
Не стоит номера хранить в строке. Лишняя работа по разбору строки. Лучше Tag юзать
Плохиш (2004-11-24 13:44:00) [2]
> denis24 (24.11.04 13:25) [4]
FindControls
denis24 (2004-11-24 13:25:00) [3]Пишу
//создаю кнопку
with button do
begin
Parent := frm1.ScrollBox3;
Name := 'Button1';
.
//проверяю на существование
if frm1.ScrollBox3.FindComponent('button1')=nil then
и он его не находит ,хотя button с именем "button1" там точно есть.
Это как?
PRM (2004-11-24 12:54:00) [4]if ButtonOwner.FindComponent('Button2')=nil then
//Компонента нет
denis24 (2004-11-24 12:49:00) [5]У меня уникальный номер хранится в имени кнопки (Button1,bitton2,button3......)
А если удалить button2 то как в цикле получить номер свободного места ,тоесть в данном случае 2?
clickmaker (2004-11-24 12:40:00) [6]Не завязываться на i, а хранить уникальный номер в св-ве Tag, например