Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

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

Наверх




Память: 0.45 MB
Время: 0.007 c
1-51827
Tundra
2002-12-05 14:17
2002.12.16
Нужно в StringGrid организовать CheckBox


3-51560
BorisUK
2002-11-28 16:32
2002.12.16
опять про раскраску Grid oв


14-51909
Nox
2002-11-21 14:54
2002.12.16
Еда для программеров


4-52019
Sergei_tlt
2002-11-04 22:10
2002.12.16
Помогите понять


8-51845
DeMoN-777
2002-09-02 17:56
2002.12.16
Как узнать длинну трека или клипа проигрываемого в TMediaPlaer ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский