Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Форма и ее кнопка на панели задач


Автор: MacTep 28.7.2008, 14:59
Для того, чтобы показываемая форма была у меня на панели задач делаю вот такую вестчь.
Код

  ...
  private
    procedure CreateParams(var Params: TCreateParams); override;
  ...

  ...
procedure TfrmAbonements.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  with Params do
    ExStyle := ExStyle or WS_EX_APPWINDOW;
end;
  ...

Но происходит следующее. Форма отображается на экране по frm.Show, затем между главной формой и той, которая только что отображена, можно переключаться по щелчку мыши на формах на экране. Но если щелкать по кнопкам на панели задач, то переключения не происходит. Измучился уже весь... Все время активна вторая форма, а переключаться на главную никак не получается. Что мне делать? В чем ошибка?

Автор: VICTAR 28.7.2008, 15:02
Попробуй
Код

inherited CreateParams(Params);
  with Params do
  begin
    ExStyle := ExStyle or WS_EX_APPWINDOW;
    WndParent := GetDesktopWindow;
  end;

Автор: MacTep 28.7.2008, 15:11
Ооооо, точно... Блин... Спасибо большое! smile

Автор: VICTAR 28.7.2008, 15:12
Не за что  smile 

Автор: Akella 29.7.2008, 11:16
Тогда при сворачивании главной формы остальные не сворачиваются. Т.е. у тебя открыто десяток форм, ну пусть даже не 10, а 5. Чтобы свернуть всё приложение, нужно закрыть все 5 окон. А если без 
Код

WndParent := GetDesktopWindow;

то при сворачивании главной формы сворачиваются/восстанавливаются все дочерние.

Добавлено через 59 секунд
тогда уж лучше смотреть в сторону MDI приложений.

Автор: pseud 29.7.2008, 11:48
Цитата(Akella @  29.7.2008,  11:16 Найти цитируемый пост)
Тогда при сворачивании главной формы остальные не сворачиваются. Т.е. у тебя открыто десяток форм, ну пусть даже не 10, а 5. Чтобы свернуть всё приложение, нужно закрыть все 5 окон.

прекрасно.
outlook именно так и работает.
и я так тож люблю последнее время делать.
mdi - не люблю.

Автор: MacTep 30.7.2008, 06:43
Цитата(Akella @  29.7.2008,  11:16 Найти цитируемый пост)
Тогда при сворачивании главной формы остальные не сворачиваются. Т.е. у тебя открыто десяток форм, ну пусть даже не 10, а 5. Чтобы свернуть всё приложение, нужно закрыть все 5 окон.
Нормально - это намного лучше, чем по кнопке не переходить на нужное окошко. Так что такая работа меня устраивает. Да и ненормальности, в принципе, не вижу. ;)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)