Форум: "Основная";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];
ВнизОбращение к классу Найти похожие ветки
← →
webpauk (2006-05-18 13:49) [0]
TUser = class
private
fLabel: array of TLabel;
public
constructor Create;
destructor Destroy; override;
procedure DoSomething;
end;
есть такой класс. А как из отдельно взятого fLabel обратиться к TUser.DoSomething?
← →
MBo © (2006-05-18 13:55) [1]Ыуда
← →
webpauk (2006-05-18 13:56) [2]Удалено модератором
← →
Сергей М. © (2006-05-18 13:57) [3]
> webpauk (18.05.06 13:56) [2]
В смысле 30 серебреников готовь в кач-ве оплаты консультации))
← →
webpauk (2006-05-18 13:58) [4]
> Сергей М. © (18.05.06 13:57) [3]
:-(
нету
← →
Плохиш © (2006-05-18 13:59) [5]
> А как из отдельно взятого fLabel обратиться к TUser.DoSomething?
Например так "Ну ты ... в натуре ... чувак ... я к тебю общаюсь ... ну ты понЯл..."
PS. Что так до сих пор не научился правильно вопросы формулировать?
← →
webpauk (2006-05-18 14:01) [6]вопрос такой:
как из конкретного Tlabel, расположенного на форме обратиться к методам класса из которого родился Tlabel?
← →
MBo © (2006-05-18 14:01) [7]Ыуда => Self (в методах класса)
Замечательная транслитерация получилась ;)))
← →
Сергей М. © (2006-05-18 14:02) [8]
> webpauk (18.05.06 13:49)
Сам то понял что спросил ?
← →
webpauk (2006-05-18 14:04) [9]
> MBo © (18.05.06 14:01) [7]
Self.ClassParent = Tobject
← →
MBo © (2006-05-18 14:06) [10]Пардон, невнимательно прочитал вопрос, так что про Self - не в струю, наверно.
Автор, поясни вопрос поподробнее.
← →
webpauk (2006-05-18 14:11) [11]кароче, сделал я TmyLabel(TLabel), где и прописал в Public declarations: ClassCreated: Pointer;
а в constructor Tuser.Create определил ClassCreated:=Self;
и теперь TmyLabel(fLabel.ClassPointer).ClassName показывает Tuser.
Вот так вот.
← →
Сергей М. © (2006-05-18 14:13) [12]
> webpauk (18.05.06 14:11) [11]
И при этом ты сходил в гости к соседу через Китай)
← →
webpauk (2006-05-18 14:14) [13]
> Сергей М. © (18.05.06 14:13) [12]
подскажи варик попроще
← →
webpauk (2006-05-18 14:14) [14]и вообще - главное: работает!
← →
Сергей М. © (2006-05-18 14:15) [15]К тому же пургу ты гонишь - при fLabel: array of TLabel строчка fLabel.ClassPointer не может быть скомпилирована, ибо бессмысленна.
← →
Сергей М. © (2006-05-18 14:16) [16]
> варик
Это, пардон, что такое ?)
← →
webpauk (2006-05-18 14:16) [17]
> Сергей М. © (18.05.06 14:15) [15]
fLabel[I].ClassPointer
← →
webpauk (2006-05-18 14:17) [18]
> Сергей М. © (18.05.06 14:16) [16]
variant
← →
Сергей М. © (2006-05-18 14:17) [19]
> webpauk (18.05.06 14:16) [17]
см. TObject.Classtype
← →
Плохиш © (2006-05-18 14:19) [20]
> webpauk (18.05.06 14:11) [11]
Я, честно сказать, так и не понял, что "великому гению" надо. Но телепатор подсказывает, что "великий гений" пытается сделать свой Owner.
← →
webpauk (2006-05-18 14:19) [21]Flabel[I].classtype=Tlabel
← →
webpauk (2006-05-18 14:21) [22]
> Плохиш © (18.05.06 14:19) [20]
точно
потому как Owner такого fLabel[I]=Form1 (или компонент, на котором оно находится)
← →
MBo © (2006-05-18 14:26) [23]возможно, такой пример поможет:
в TUser.Create
fLabel[0]:= TLabel.Create(...)// если они внутри создаются
fLabel[0].Tag := Integer(Self)
...
TUser(fLabel[0].Tag).DoSomething
← →
webpauk (2006-05-18 14:29) [24]
> MBo © (18.05.06 14:26) [23]
не поможет
Tag используется
← →
Сергей М. © (2006-05-18 14:35) [25]
> webpauk (18.05.06 14:19) [21]
Врешь ведь ...
Проверяй :
type
TMyObject = class(TObject)
end;
procedure TTestForm.Button3Click(Sender: TObject);
var
Obj: TObject;
begin
Obj := TMyObject.Create;
ShowMessage(Obj.ClassName); //Увидишь именно "TMyObject", а не "TObject", несмотря на то что Obj: TObject
end;
← →
webpauk (2006-05-18 14:35) [26]
> MBo © (18.05.06 14:26) [23]
вопрос имел целью определить есть ли какие либо свойства Tlabel(Tobject), которые позволяют обратиться напрямую, без использования вспомогательных свойств Tlabel, к классу-создателю
← →
Сергей М. © (2006-05-18 15:03) [27]
> к классу-создателю
Галиматья
← →
Плохиш © (2006-05-18 15:11) [28]
> webpauk (18.05.06 14:21) [22]
>
> > Плохиш © (18.05.06 14:19) [20]
>
> точно
> потому как Owner такого fLabel[I]=Form1 (или компонент,
> на котором оно находится)
Чушь полная и не прекрытая и отсутствие знаний.
constructor TUser.Create;
begin
...
fLabel[i] := TLabel.Create(self);
...
end;
← →
Сергей М. © (2006-05-18 15:14) [29]
> webpauk (18.05.06 14:35) [26]
Ты разницу между "класс-создатель" и "объект-владелец" осюсяешь ?
← →
webpauk (2006-05-18 15:48) [30]
> Сергей М. © (18.05.06 15:03) [27]
суть то ты хоть понял? не в определениях дело
← →
Джо © (2006-05-18 15:50) [31]> [30] webpauk (18.05.06 15:48)
>
> > Сергей М. © (18.05.06 15:03) [27]
>
> суть то ты хоть понял? не в определениях дело
Как это не в них? Если на автомобильном форуме Феррари будут называть Жигулем, а Жигуль — самокатом Хонда, как думаешь, смогут до чего-нибудь толкового договориться?
← →
Сергей М. © (2006-05-18 15:52) [32]
> webpauk (18.05.06 15:48) [30]
> суть то ты хоть понял?
Как ты изложил суть, так я ее и понял.
> не в определениях дело
Да неужели ?
Ты там, кажется, в [22] про Owner что-то пробухтел ?)
Ну так вот изволь для начала объяснить свое видение связи терминов "создатель" и "владелец" ..
← →
Сергей М. © (2006-05-18 15:54) [33]
> webpauk (18.05.06 15:48) [30]
И надеююсь, что ты не облажаешься, хотя бы потому что разместил свой вопрос в "Общие", а не в "Начинающие" (куда, imho, тебе дорога давно уже протоптана)
← →
webpauk (2006-05-18 15:59) [34]Удалено модератором
← →
Сергей М. © (2006-05-18 16:01) [35]Удалено модератором
← →
Плохиш © (2006-05-18 16:03) [36]
> webpauk (18.05.06 15:59) [34]
http://ln.com.ua/~openxs/articles/smart-questions-ru.html
> Сергей М. © (18.05.06 16:01) [35]
Спокойствие, только спокойствие.
← →
webpauk (2006-05-18 16:06) [37]
> Плохиш © (18.05.06 16:03) [36]
спасибо
но, чтобы правильно сформулировать вопрос, надо знать хотя бы часть ответа на него
← →
webpauk (2006-05-18 16:06) [38]Удалено модератором
← →
Сергей М. © (2006-05-18 16:07) [39]
> webpauk (18.05.06 15:59) [34]
К тому же дин.массив твой в этом плане нафих не нужен, ибо достаточно было наследовать TUser от TComponent и создавать все свои "новомодные" Label"ы с параметром Owner, равным ссылке на этот самый твой компонент-владелец.
p.s.
Еще раз - изобретатели велосипедов здесь живут в "Начинающие")
← →
webpauk (2006-05-18 16:09) [40]Удалено модератором
Страницы: 1 2 3 вся ветка
Форум: "Основная";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.011 c