![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 26.02.2013
Сообщений: 66
|
![]()
как написано в справке
the following events occur in the order listed: OnCreate OnShow OnActivate OnPaint у главной FormStyle = fsMDIForm Необходимо в момент запуска создавать дочерние MDI окна из сохранённого состояния. И вот тут-то при попытке TMDIChild.Create(Application) возникает ошибка Сannot create form. No MDI forms are currently active Вопрос: когда же их уже можно создавать, если даже в момент OnPaint оно еще No active, да и как это делать, если других событий нет? |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
OnActivate
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 26.02.2013
Сообщений: 66
|
![]()
Неужели думаете, что не пробовал?
Во всех вариантах ошибка. |
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]() Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 26.02.2013
Сообщений: 66
|
![]()
Если перенести создание дочерней формы из onActivate в onShow, то тоже нормально. Вот если в onCreate, тогда конечно, ошибку выдаст.
Но дело не в этом, я подсунул вместо пустой дочерней свою рабочую, и тоже сработало. А тот же вызов из моей главной приводит к ошибке. Вывод: проблема в главной форме? И что может мешать ей вовремя создаться? Меню? Кнопки? |
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
в OnCreate Handle формы еще не создан, поэтому и ошибка. В OnShow и OnActivate уже создан. OnPaint вообще не при делах, он вызывается неоднократно во время жизни формы и можно использовать только для прорисовки. Сравни свойства своей главной и той, что во вложении.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 26.02.2013
Сообщений: 66
|
![]() |
![]() |
![]() |
![]() |
#8 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,887
|
![]()
А файл проекта (dpr) посмотреть можно?
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как выполнить действия с компонентом? | artemavd | Общие вопросы Delphi | 14 | 10.08.2014 09:34 |
Обновление поля формы после создания новой записи создания | romanln2012 | Microsoft Office Access | 2 | 09.08.2012 14:12 |
Как программно закрыть все открытые модальные формы перед сворачиванием главной формы в трей? | SkAndrew | Общие вопросы Delphi | 8 | 27.01.2010 22:44 |
Форма с авторизацией пользователя после появления главной формы | r00xus | Общие вопросы Delphi | 7 | 14.01.2010 06:21 |
Выполнить действия после отображения формы | zhefran | Общие вопросы Delphi | 15 | 14.08.2008 16:50 |