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

Вниз

Классы и подклассы   Найти похожие ветки 

 
Agent[007]   (2004-06-07 14:41) [0]

Допустим у нас есть тип:
 TMenuItemGL = record
   Caption : string[32];
   Index   : Integer;
 end;


И три производных класса:
 TMenuDirGL = class(TMenuItemGL)
   Items : array of TMenuItemGL;
   procedure Add(mItem: TMenuItemGL);
 end;

 TMenuOptionGL = class(TMenuItemGL)
   Checked : Boolean;
   OnCheck : procedure;
 end;

 TMenuButtonGL = class(TMenuItemGL)
   OnClick : procedure;
 end;


Массив:
 MainMenu: array of TMenuItemGL;

???ВОПРОС???

Как в массив MainMenu записать переменные типа, производного от TMenuItemGL ???


 
Erik1   (2004-06-07 14:45) [1]

Вопрос: как это ты унследовался от TMenuItemGL - этоже record! А записать просто

SetLength(MainMenu, 3);
New(MainMenu[0]);


 
KSergey ©   (2004-06-07 14:48) [2]

От рекорда наследуется класс?? Нука, попробую....


 
KSergey ©   (2004-06-07 14:49) [3]

Вы компилить пробовали сей бред?? (я проверил, а то уж засомневался.. вдруг чего не понимаю...)


 
Agent[007]   (2004-06-07 14:52) [4]

А от чего классы наследуются???


 
KSergey ©   (2004-06-07 14:57) [5]

От классов, разумеется


 
Agent[007]   (2004-06-07 15:00) [6]

Ну так что вместо рекорда class писать?


 
KSergey ©   (2004-06-07 15:04) [7]

Да


 
Digitman ©   (2004-06-07 15:16) [8]


> Agent[007]   (07.06.04 15:00) [6]
> Ну так что вместо рекорда class писать?


прежде чем слепо рассуждать о необходимости наследования чего-либо от чего-либо, возьми бамажку с карандашом и не спеша разберись в том, какая сущность у тебя может и должна быть наследником какой-либо иной сущности ... пока же у тебя - полный бардак в голове с логикой наследования чего-либо от чего-либо ...


 
Sandman25 ©   (2004-06-07 15:24) [9]

>Как в массив MainMenu записать переменные типа, производного от TMenuItemGL ???

А в чем проблема? Никогда не удивлялись, почему TNotifyEvent объявлен с параметром типа TObject, а вызывается с параметром типа TButton или TDBGrid?


 
Erik1   (2004-06-07 16:07) [10]

А зачем тебе вобще наследоватся?
Напиши просто
TMenuDirGL = class
....
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
1-1086463585
san
2004-06-05 23:26
2004.06.20
Совместимость отчетов


1-1086637381
som
2004-06-07 23:43
2004.06.20
Альбомная страница по умолчанию при печати


1-1086516192
Larry Laffer
2004-06-06 14:03
2004.06.20
Функция в DLL


3-1085664352
Jet
2004-05-27 17:25
2004.06.20
Table => Filter?


6-1083131697
Barman
2004-04-28 09:54
2004.06.20
Отправка формы