Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Смена главной формы в процессе выполнения проги

560
26 ноября 2001 года
Niafalcon
6 / / 20.01.2000
Как в процессе выполнения программы сменить главную форму (закрытие которой приводит к закрытию приложения)? Дело в том, что, как известно, по умолчанию главной считается форма, созданная первой. Но я хочу, чтобы главная форма создавалась последней.
Аноним
Именно ГЛАВНУЮ форму изменить нельзя. Дело в том, что ее класс является предком ВСЕХ объектов программы. Потому-то при закрытии главной формы и происходит завершение приложения - вызывается деструктор класса-папы что килит всех его потомков. Выход такой - сделать главную форму невидимой, грузить ее, а на событие OnCreate (или в конструкторе - как больше нравится) создавать другую форму, которую использовать как главную.
Типа такого
TMainForm::Create(...)
{
TChildForm *ChildForm = new TChildForm(this);
// TChildForm должна быть включена в проект и ее header д.б. включен в header проекта
ChildForm->Show();
}
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог