Язык программирования Delphi. Наследственность форм в Delphi:
Сегодня я решил вернутся к вопросу наследственности. Это достаточно сложная тема, поэтому я решил показать тебе наследственность на примере форм. После этого у тебя отпадёт громадное количество вопросов, и ты убедишься в можности визуализации Delphi.
Рис 1. Главная форма
Создай новый проект. Брось на форму две кнопки. На одной напиши "Главное окно", на другой "Дочернее окно". Посмотри на рисунок 1, где показана моя форма. Сделай что-нибудь подобное.
Теперь создадим ещё одну форму. Для этого выбери меню File->New->Form. На форму брось несколько компонентов TLabel, несколько TEdit и кнопку. Я выстроил это, как на рисунке 2.
Рис 2. Вторая форма
Это у нас будет основная форма. Имя формы оставлю по умолчанию (Form2).
Сейчас мы выведем из неё дочернюю форму. Для этого выбери из меню File->New (для Delphi6 это File->New->Other) смотри на рисунок 3. Перед тобой появится окно создания новой формы. Перейди на закладку с именем твоего проекта. Здесь щёлкни дважды по форме 2 (Form2). Этим ты создашь новую форму, дочернюю к Form2. Это значит, что она будет обладать всеми свойствами своей главной формы, плюч с новые возможности.
Рис 3. Создание новой формы
Теперь попробуй поигратся с формами. Если ты на форму 2 (Form2) поставишь ещё какой-нибудь компонент, то форма 3 (Form3) сразу наследует этот компонент.
Если ты напишешь какой-нибудь код по событию на нажатие кнопки в главной форме (Form2), то дочерняя форма (Form3) моментально получит те же свойства. Хотя в дочерней форме ты не увидешь этого кода, потому что они наследуются. В то же время, если ты в дочерней форме напишешь какой-нибудь код для той же кнопки, то старый код уже не будет наследоватся и выполняться. Это уже называется переопределение методов. То есть на одни и те же события, родственные формы могут отвечать одинаково, а могут и по разному, если в дочерней форме тот же метод реализован по другому.
В то же время, ты можешь добавлять новые свойства дочерней форме, на главной они появлятся не будут. Так ты можешь ставить новые кнопки и писать новый код.
Поиграй с формами, напиши какой-нибудь код. Ты долен окончательно разобратся с наследственностью. Это действительно сильная вещь.