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

Вниз

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

 
AlexanderSK   (2003-09-30 13:56) [0]

Проблема в следующем:
1. У меня есть несколько фреймов, в которых есть несколько совершенно одинаковых методов.
2. Я хочу создать новый класс (предок TFrame или TCustomFrame) и перенести туда эти методы.
3. После этого нужно будет этот новый класс сделать родителем уже имеющихся у меня фреймов.

Подскажите, пожалуйста, как это правильно сделать?


 
jack128 ©   (2003-09-30 14:06) [1]


> После этого нужно будет этот новый класс сделать родителем
> уже имеющихся у меня фреймов.

Открыть dfm существующих фреймов и заменить первое слово object на inherited. В pas файле изменить
TMyFrame1 = class(TFrame) на TMyFrame = class(TMyCustomFrame)

ps все изменения производить в блокноте


 
AlexanderSK   (2003-09-30 14:11) [2]

>jack128
А можно по подробнее что означает замена object на inherited в dmf-ке?

Заранее благодарен!


 
AlexanderSK   (2003-09-30 14:14) [3]

т.е. в dfm.


 
jack128 ©   (2003-09-30 14:22) [4]


> А можно по подробнее
...
Куда подробнее? Открыть dfm - файл в блокноте сложно?


 
AlexanderSK   (2003-09-30 14:34) [5]

>jack128
>Куда подробнее? Открыть dfm - файл в блокноте сложно?

Нет не сложно! Я спрашивал о теоретическом аспекте замены object на inherited. Что это означает с т.з. объектной модели Delphi?


 
KSergey ©   (2003-09-30 14:35) [6]

2. Я хочу создать новый класс (предок TFrame или TCustomFrame) и перенести туда эти методы.

Этот новый класс должен быть потомком TFrame (проще), но не его предком.
Или я неверно понял фразу.


 
KSergey ©   (2003-09-30 14:38) [7]

[5] AlexanderSK (30.09.03 14:34)
Нет не сложно! Я спрашивал о теоретическом аспекте замены object на inherited. Что это означает с т.з. объектной модели Delphi?


Ну то, что и требовалось получить в вопросе ;)
Что этот класс наследуется от другого пользовательского
А от какого - это в pas-файле указывается

PS
А, к стати, занятная нелогичность получается: фрейм (в данном случае) все равно от TFarame наследуется же, но не inherited....
Видимо тут что-то свое имелось в виду.


 
AlexanderSK   (2003-09-30 14:49) [8]

>KSergey © (30.09.03 14:35) [6]
>Этот новый класс должен быть потомком TFrame (проще), но не его предком.
1.Новый класс (TMyFrame) дожен быть потомком TFrame.
2.Этот новый TMyFrame должен заменить родителя уже существующим в проекте фреймам.


 
KSergey ©   (2003-09-30 14:56) [9]

Ну, так и будет
См. [1] jack128 © (30.09.03 14:06)

Только перед этим обязательно создать TMyCustomFrame ;)
Ну сделать автозамену некоторых фрагментов текста в сообщении [1] в соответствии с требованиями [8]

Ну не разжевывать же до конца, в самом то деле. Где полет мысли? ;)


 
Rem ©   (2003-09-30 15:00) [10]

1. Клацнуть правой кнопкой на фрейме-родителе и выбрать "Add to Repository..." и указать на какую страницу репозитория и под каким именем размещать.
2. "File"-"New"-"Other...". Открыть страницу, выбрать фрейм и указать (внизу окна) способ создания нового фрейма: Копирование, Наследование или Использование.


 
AlexanderSK   (2003-09-30 15:01) [11]

Написал. Поменял.
Теперь при открытии проекта получаю - "Error ceating form: Ancestor for "TMyCustomFrame" not found."

TMyCustomFrame лежит в отдельном юните.

В чем дело?


 
icWasya ©   (2003-09-30 15:10) [12]

давай поподробнее, что сделал и в каком порядке


 
AlexanderSK   (2003-09-30 15:23) [13]

Все со все разобрался! Всем бооольшое спасибо!



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

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

Наверх




Память: 0.49 MB
Время: 0.016 c
1-27582
MakNik
2003-09-29 10:39
2003.10.09
TreeView


4-27768
waw
2003-08-04 14:48
2003.10.09
Как добваить Windows меню


14-27661
Guzz
2003-09-22 15:20
2003.10.09
Борьба со спамом


3-27372
Настенька
2003-09-21 13:30
2003.10.09
Привет всем. Помогите!!!


3-27301
Vlad
2003-09-19 12:31
2003.10.09
Вопрос по InterBase