2013-06-07 6 views
0

Как я могу изменить MainForm моего приложения во время выполнения?Изменение MainForm во время выполнения

+0

Зачем вам нужно его менять? –

+0

Потому что я вызываю другую форму FormAuthorize Form on OnShow() моего MainForm. Он имеет две кнопки, и один из них - «Выход». При нажатии на выход следует прекратить действие приложения без появления и исчезновения MainForm. Хотя я сделал видимость MainForm ложной в событии OnShow, когда форма запускается, но я не могу контролировать видимость MainForm в событии show –

+0

Вам не нужно менять MainForm, чтобы выполнить это. Есть лучшие альтернативы: 1) создать (через 'new') и показать FormAuthorize перед созданием MainForm. Если нажата кнопка «Выход», не создавайте MainForm вообще. 2) если вы сначала должны создать MainForm, тогда вы можете вызвать 'Application-> Terminate()', если нажать Exit, и использовать 'Application-> ShowMainForm = false', чтобы скрывать MainForm. –

ответ

3

Как только MainForm был установлен по первому требованию к TApplication::CreateForm(), его нельзя изменить впоследствии. Вы можете либо написать код для управления, который класс TForm передается первому вызову CreateForm(), либо вы можете использовать скрытый TForm как MainForm, а затем при необходимости отображать вторичные формы.

Смежные вопросы