Текущий архив: 2005.12.11;
Скачать: CL | DM;
ВнизПомогите с именами компонентов!!! Найти похожие ветки
← →
tigrenok © (2005-11-19 21:49) [0]Привет! помогите пожалуйста....
у меня есть много панелек.. и хотелось бы циклом задавать каждой пареметры, имена панелек такие
p1,p2,p3 и тд..... должно быть что-то типа такого (P+"i").top:= итд
← →
Virgo_Style © (2005-11-19 21:59) [1]Components[], FindComponent()
← →
mfender © (2005-11-19 22:03) [2]Должно быть примерно так:
var i: Integer;
C: TComponent;
PC: Integer;
begin
PC := 1;
for i:=0 to (Sender as TForm).ControlCount-1 do
begin
C := (Sender as TForm).Controls[i];
if ((C.ClassName = "TPanel") and (C.Name = "P"+IntToStr(PC))) then
begin
(C as TPanel).top := i*10;
inc(PC);
end;
end;
← →
tigrenok © (2005-11-19 23:12) [3]ПАСИБА!!! ПОПРОБУЮ РАЗОБРАТЬСЯ!
← →
tigrenok © (2005-11-19 23:43) [4]Хрен знает... у меня выдаёт:Инвалид класс тайп каст..........Напишу я криво всё же.... :) один раз используюю...
← →
Сайбель Алексей © (2005-11-19 23:51) [5]
> Хрен знает... у меня выдаёт:Инвалид класс тайп
> каст..........Напишу я криво всё же.... :) один раз
> используюю...
Лучше не иди на сделку с совестью. "Помучайся" сейчас - и знания останутся на потом,
Это все равно тебе понадобится при более крупных проектах рано или поздно.
Разберись с Virgo_Style © [1]
← →
mfender © (2005-11-20 00:32) [6]
> Хрен знает... у меня выдаёт:Инвалид класс тайп каст.....
> .....Напишу я криво всё же.... :) один раз используюю...
>
Инвалидом ругается Sender. Я-то написал как, если бы все панели на TForm лежали...
И правильно сказал Сайбель Алексей © (19.11.05 23:51) [5]. Помучайся сразу. И FindComponent() тоже разбери - панельки твои могут оказаться не в одном месте...
← →
tigrenok © (2005-11-20 01:33) [7]Да...и не по совести не проктит..... всё равно придётся с этим разбираться.. по другому никак.. У меня панельи лежат на другой панельке! А порпоще никак нельзя это написать?
← →
Anatoly Podgoretsky © (2005-11-20 12:13) [8]Поиск надо делать в контейнере, если контейнер не форма, а панель, то поиск в панели.
← →
mfender © (2005-11-20 15:44) [9]
> всё равно придётся с этим разбираться.. по другому никак.
> . У меня панельи лежат на другой панельке! А порпоще никак
> нельзя это написать?
Вот беда...
Да куда уж тут еще-то проще?
← →
tigrenok © (2005-11-20 20:39) [10]procedure TForm1.Button1Click(Sender: TObject);
var i: Integer;
C: TComponent;
PC: Integer;
begin
PC := 1;
for i:=0 to form1.ControlCount-1 do
begin
C := form1.Controls[i];
if ((C.ClassName = "TPanel") and (C.Name = "P"+IntToStr(PC))) then
begin
(C as TPanel).top := i*10;
inc(PC);
end;
end;
end;
end.
ЕСЛИ так.... то тоже не работает хотя не материться.... это когда панельки на форме
← →
Virgo_Style © (2005-11-20 20:53) [11]tigrenok © (20.11.05 20:39) [10]
Наверное, вместо PC лучше использовать Tag... вряд ли можно гарантировать, что порядок панелей в Controls совпадет с порядковым номером.
← →
Проктолог (2005-11-20 22:10) [12]
> for i:=0 to form1.ControlCount-1 do
Иди теорию учи.
← →
tigrenok © (2005-11-20 22:21) [13]Проктолог, согласен... отпишусь.....
Страницы: 1 вся ветка
Текущий архив: 2005.12.11;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.039 c