![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Участник клуба Подтвердите свой е-майл
Регистрация: 26.01.2008
Сообщений: 1,899
|
![]()
Доброго времени суток!
Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
При уничтожении владельца уничтожится и форма. Только и всего
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#3 |
Участник клуба Подтвердите свой е-майл
Регистрация: 26.01.2008
Сообщений: 1,899
|
![]()
Получается, если я так
Код:
А если буду создавать так Код:
А это по ходу лучше вообще не использовать Код:
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Делаешь в OnClose формы
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#5 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,926
|
![]()
А как же список Components? Или вы им никогда не пользуетесь по религиозным соображениям?
![]() Понимаете ли вы, кто в этом случае будет владельцем данной формы? |
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]() Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
![]() |
![]() |
![]() |
#7 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,926
|
![]()
Ну тогда я добавлю свои две копейки.
Create(Application); используется в стандартном шаблоне создаваемом Дельфи. В этом стандартном шаблоне он ни чем не лучше и ни чем не хуже Create(nil); Во всяком случае на версиях Windows старше Win3.11 Create(nil); как раз очень часто используется многими авторами при создании временных форм типа Код:
жду хоть какой-то реакции ТС на мой вопрос #5. |
![]() |
![]() |
![]() |
#8 | |
Участник клуба Подтвердите свой е-майл
Регистрация: 26.01.2008
Сообщений: 1,899
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#9 |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
![]()
Мне кажется, Вы этим вопросом сами себя запутали. Дело ведь в том, где именно происходит конструирование формы: в методе самой формы или в методе порождающей формы (что встречается гораздо чаще). Во втором случае возникнет вполне нормальная связь предок-потомок.
|
![]() |
![]() |
![]() |
#10 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,926
|
![]()
Вот это как раз и ошибка. Впрочем скорее порожденная учебой на всемирной помойке, а не по учебникам.
Форма не может быть владельцем самой себя! Как впрочем и любой другой компонент! Она либо имеет владельцем другой компонент, либо не имеет владельца вообще (TMyForm.Create(nil)). Зарезервированное слово Self означает неявный параметр, который передаётся в любой метод любого класса и содержит ссылку/указатель на конкретный экземпляр этого класса, в котором и был вызван данный метод. Т.е. предположим что у вас есть форма класса TForm1. На ней есть кнопка Button1 : TButton; И есть обработчик нажатия этой кнопки: Код:
P.S. Black Fregat, вам по прежнему кажется, что я сам себя запутал? |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Динамическое создание формы | NaumOff | Общие вопросы Delphi | 2 | 17.09.2012 18:52 |
динамическое создание формы | Wi1D | Общие вопросы Delphi | 2 | 24.01.2011 01:03 |
Динамическое создание формы | BoT_T | Win Api | 4 | 10.12.2010 12:36 |
Динамическое создание формы. | Son | Общие вопросы Delphi | 1 | 04.02.2009 15:33 |
Динамическое создание формы | Rifler | Общие вопросы Delphi | 6 | 11.09.2008 20:50 |