Форум — Ответы     (  К темам )
 ?  s: Проблема с формами (11-01-2003 04:29:50)
У меня проблема такая:главная форма моего проекта имеет свойство StayOnTop
в ходе работы приложения нужно показать другую форму,которая меньших размеров,
со свойством ScreenCenter, и конечно же, скрывается за главной.
Есть ли способ показать эту форму в центре экрана,(поверх главной)не хотелось бы показывать ее где-нибудь в углу.Спасибо!
 Павел (11-01-2003 21:42:16)
Вряд-ли
Во первых, если другая форма показывается как Form2->ShowModal, то она встанет
поверх главной
Если она Form2->Show(), то можно перед показом переключить свойство главной формы с StayOnTop на другое,

void __fastcall TForm2::FormShow(TObject *Sender)
{
Form1->FormStyle = fsNormal;
}
а потом включить опять.
void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action)
{
Form1->FormStyle = fsStayOnTop;
}

хотя по help-у это делать во время работы приложения не рекомендуется:

fsStayOnTop This form remains on top of the desktop and of other forms in the project, except any others that also have FormStyle set to fsStayOnTop.If one fsStayOnTop form launches another, neither form will consistently remain on top.

If the form is the main form of an MDI application, its FormStyle property must be set to fsMDIForm.

Note: It is not advisable to change FormStyle at runtime.