Форум: "Основная";
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];
ВнизИмя компонента как переменнная Найти похожие ветки
← →
VlNek (2002-04-11 08:58) [0]Есть ли возможность свойству Name компонента присваивать значение переменной. Пример:
Var a:integer;
begin
a:=3;
image(a).Left:=18;
end;
← →
Ra (2002-04-11 09:16) [1]что то у меня пример с вопросом не согласуется..
может уточнить вопрос?
← →
Song (2002-04-11 09:23) [2]Нет, нельзя.
Вы можете либо создавать класс в run-time и запихать в массив, например:
Var Arr: array [1..10] of TBitMap;
Arr[1]:=TBitMap.Create;
...
И дальше обращаться по номеру ячейки массива.
Либо искать компонент через FindComponent, например (Вам нужно что-то сделать с Image2, тогда):
n:=2;
TImage(FindComponent("Image"+IntToStr(n))).Left:=...;
Только нужно иметь ввиду, что данный компонент должен быть, потому что в приведённом выше примере проверка на nil не выполняется. Если он (компонент) может и не быть, тогда нужно либо проверять на nil, либо поместить вышеупомянутую команду в состав исключения.
← →
MBo (2002-04-11 09:25) [3]это имелось в виду?
TImage(findcomponent("Image"+Inttostr(a))).left:=18;
← →
Anatoly Podgoretsky (2002-04-11 11:09) [4]Можно, Component.Name := StrVar;
← →
Song (2002-04-11 11:15) [5]Анатолий, нн имел ввиду численную переменную.
← →
Anatoly Podgoretsky (2002-04-11 11:25) [6]Нет проблем IntToStr
Но имел он ввиду другое, интерпритатор
← →
Андрей Сенченко (2002-04-11 12:21) [7]Вопрос, я так полагаю состоит в том, как создать в Run-time произвольное количество объектов.
К примеру где-то видел такой вопрос : "Как сделать чтобы было нужное (любое) количество окошек как в аське"
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c