Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.25;
Скачать: CL | DM;

Вниз

Обращение к классу   Найти похожие ветки 

 
saxon   (2006-05-18 18:01) [80]


> Form1.TipLabel(Popup1.PopupComponent).???.DoSomthing

Кроме Form1, больше ничего не понял :)

Что тут TipLabel - судя по семантике это функция (тогда что она возвращает)?
Popup1?
тем более Popup1.PopupComponent?


 
webpauk   (2006-05-18 18:05) [81]

Form1.FLabel.Popup=Popup1
обратиться к свойствам Flabel из Popup.MenuItem1: Tlabel(Popup1.PopupComponent).в моем случае class TipLabel (Tlabel) - TipLabel(Popup1.PopupComponent).


 
webpauk   (2006-05-18 18:07) [82]

а как обратиться к методам класса Tgroup через TipLabel?


 
Сергей М. ©   (2006-05-19 09:23) [83]


> как обратиться к методам класса Tgroup через TipLabel?
>


В данной реализации - никак.

Сделай TGroup наследником TComponent и указывай TGroup-объект в качестве Owner"a для всех объектов TIPLabel, относящихся к данному TGroup-объекту.

Тогда обращение будет выглядеть след.образом

TGroup(fLabel.Owner).DoSomething


 
webpauk   (2006-05-19 09:41) [84]


> Сергей М. ©   (19.05.06 09:23) [83]

спасибо
вот это - позитив.


 
webpauk   (2006-05-19 09:44) [85]

Tgroup=class(TComponent) ~ fLabel.ClassCreated:=Self (ClassCreated: Tobject)


 
Сергей М. ©   (2006-05-19 10:20) [86]


> webpauk   (19.05.06 09:44) [85]


Опять ты за свое ?)

Не нужно тебе никаких ClassCreated !

Тебе нужно узнать какому объекту класса TUser "принадлежит" тот или иной объект класса TIPLabel ? Вот для того св-во Owner и существует !

SomeUserObject := TUser.Create(..); //TUser = class(TComponent) !!
..
SomeIPLabelObject := TIPLabel.Create(SomeUserObject); //отныне владельцем только что созданного объекта класса TIPLabel становится ранее созданный объект класса TUser, ссылку на который ты передал параметром SomeUserObject !!

Все !

Теперь в любой момент обращение вида

TUser(SomeIPLabelObject.Owner).DoSomething

приведет к вызову метода DoSomething именно того объекта, который является владельцем объекта SomeIPLabelObject !


 
webpauk   (2006-05-19 10:23) [87]

да я понял...
даже с первого раза...

но если TUser = class, а не TUser = class(TComponent) , то решением будет мой вариант


 
Сергей М. ©   (2006-05-19 11:35) [88]


> webpauk   (19.05.06 10:23) [87]


Ну если тебе хочется изобрести велосипед, то на здоровье)
Но при этом следовало хотя бы устранить путаницу в смысловом контексте выбранных тобой имен идентификаторов.


 
webpauk   (2006-05-19 11:47) [89]


> Сергей М. ©   (19.05.06 11:35) [88]

дык Tuser не наследник Tcomponent. Tuser = class


 
Сергей М. ©   (2006-05-19 11:51) [90]


> webpauk   (19.05.06 11:47) [89]


Дык сделай его наследником Tcomponent ?

Что мешает-то ?


 
webpauk   (2006-05-19 12:21) [91]


> Сергей М. ©   (19.05.06 11:51) [90]

уже...
только какой же он, блин, наследник?
так - ни то, ни сё :)


 
Сергей М. ©   (2006-05-19 13:07) [92]


> webpauk   (19.05.06 12:21) [91]


> какой же он, блин, наследник?


Как это какой ?!

Точно такой же полноправный наследник ..



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

Текущий архив: 2006.06.25;
Скачать: CL | DM;

Наверх




Память: 0.62 MB
Время: 0.039 c
2-1149665351
Alex>
2006-06-07 11:29
2006.06.25
TQuery


1-1147960956
Alex35
2006-05-18 18:02
2006.06.25
Какие сделать демки?


1-1147688524
Tempora
2006-05-15 14:22
2006.06.25
Как определить является ли папка символической ссылкой?


1-1147849233
NigthSkif
2006-05-17 11:00
2006.06.25
MaskEdit


15-1149145793
vecna
2006-06-01 11:09
2006.06.25
Темы XP, опять все не слава богу =(