Вниз
Скачать: CL | DM;

Как узнать имя экземпляра класса?   Найти похожие ветки 

← →
lovres ©   (2002-12-05 16:04) [0]

Конкретнее:
Динамически создаются объекты типа TShape и, в зависимости от имени надо выполнять разные действия. Например, у объекта с именем Shape1 поменять цвет, а для Shape2 - размер. Как по Source можно узнать имя именно объекта, а не самого класса или как по-другому?


← →
LongIsland ©   (2002-12-05 16:09) [1]

Или как по-другому:-)
Когда создаешь объекты - присваивай им имена и все, например

for i:=0 to 10 do
begin
Shape:=TShape.Create(Form);
Shape.Parent:=Form;
Shape.Name:="Shape"+IntToStr(i);
...
end;


← →
Skier ©   (2002-12-05 16:10) [2]

>lovres

if CompareText(TComponent(Source).Name, "Shape1") = 0 then begin
end; //if

Но...есть ещё хороший метод - FindComponent(...)


← →
Smashich ©   (2002-12-05 16:13) [3]

чем не нравится (Sender as TComponent).Name?


← →
Smashich ©   (2002-12-05 16:14) [4]

я так понимаю проблема в том человек не знает про приведение типов?


← →
Zemal ©   (2002-12-05 16:29) [5]

А как ты даёшь имена экземплярам класса? Вот и оперируй с Sender-ом как пожелаешь :), у него будет поле Name в котором и будет содержаться имя как String.


← →
lovres ©   (2002-12-05 16:35) [6]

TComponent(Source).Name - ну конечно же. спасибо.
>to Smashich
Да, согласен,-прямое приведение типа, но у кого не бывает трудных дней...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
6-51866
izhalex
2002-10-12 12:05
2002.12.16
глюки с ActiveConnections


14-51907
Мазут Береговой
2002-11-22 00:51
2002.12.16
Я от жены ушел... или... она от меня...


4-52025
GOD
2002-11-05 02:22
2002.12.16
Вопрос № 2


14-51960
LongIsland
2002-11-22 18:26
2002.12.16
Выпил я или напился?


3-51563
Johnmen
2002-11-26 12:57
2002.12.16
Ссылочная целостность




   Наверх