![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
отображение других форм, кроме главного, в панели задач [D5, Win2k]
Andrei__ © (2002-08-08 05:19:00)Для отображения других форм, кроме главного, в панели задач использую метод:
procedure TMyForm.CreateParams(var Params :TCreateParams); {override;}
begin
inherited CreateParams(Params); {CreateWindowEx}
Params.ExStyle := Params.ExStyle or WS_Ex_AppWindow;
end;
Делается это для того, чтобы можно было не закрывая одного окна беспрепятственно работать с остальными. MDI-интерфейс в данном проекте не уместен.
Проблема в том, что если, например, из такой формы вызвать какую-нибудь модальную форму (тот же диалог об открытии файла), потом перейти на главную форму или любое другое приложение, а затем вернуться на исходную форму через StatusBar, то вызванная нами модальная форма оказывается ПОД вызвавшей ее формой. И т.к. она модальная, то никаких действий, естественно, производить нельзя. Перейти на эту самую модальную форму можно с помощью Alt+Tab, но не будешь же в документации указывать такие "особенности" программы. Может кто-нибудь помочь в этом вопросе?
Ученик (2002-08-08 09:48:00) [1]procedure TForm1.DoActivate(Sender: TObject);
begin
Screen.Forms[0].BringToFront
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnActivate := DoActivate
end;