Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 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 произвольное количество объектов.
К примеру где-то видел такой вопрос : "Как сделать чтобы было нужное (любое) количество окошек как в аське"




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.02 c
3-80809           Mikeee                2002-04-05 08:50  2002.04.25  
Как вставить в строку SQL-запроса одинарные кавычки


7-81086           Сержик                2002-01-28 14:20  2002.04.25  
Хочу точку на доп.клавиатуре(del) при включенном русском!


14-81056          Елена                 2002-03-18 09:43  2002.04.25  
Паскаль на Западе


1-80924           kopachev              2002-04-11 07:37  2002.04.25  
Задание сужения для текста


1-80842           Schummi               2002-03-30 08:12  2002.04.25  
В чем error?