Вниз
Скачать: 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 вся ветка

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



Память: 0.47 MB
Время: 0.022 c
4-1084787168
SergD
2004-05-17 13:46
2004.06.20
Как под LPT сделать кнопку и отследить ее состояние?


14-1086250581
AlexG
2004-06-03 12:16
2004.06.20
Ассоциация CBOSS


3-1085635989
evgen
2004-05-27 09:33
2004.06.20
Экспорт содержимого DBGrid в Excel


3-1085475455
Курдль
2004-05-25 12:57
2004.06.20
OLE DB неправильно транслирует строковые поля.


1-1086233758
rtf
2004-06-03 07:35
2004.06.20
Как узнать количество дней между двумя датами?




   Наверх