Перейти к содержанию
Fire Monkey от А до Я
  • 0

Несколько окон приложения в панели задач[2]


Winexcel

Вопрос

Опубликовано

Здравствуйте, хотелось бы задать подобный вопрос пользователя AlexG.

 

Собственно в чем суть, сделал все также как описано в теме, вариант рабочий, но рабочий до первого сворачивания главного окна, после того, как сворачивается главное окно и после разворачивается через панель задач то появляется дубль этого окна в панели задач. Поясню на скриншотах:

Вот так выглядит на панели задач иконка после запуска приложения:

1.png.7bda239d59b8f2282e7c550dc28c6add.png

Вот так она выглядит когда мы свернули приложение:

2.png.634aacd2561b78e0f6c5fa9a1537f82d.png

И вот так она выглядит когда мы делаем клик по иконки на панели задач чтобы развернуть приложение:

 

3.png.299958b339649168724f4b818bd63fdc.png

 

Знает кто-нибудь как решить?

Код Project.drp:

begin
  Application.Initialize;
  Application.CreateForm(TForm2, Form2);
  ShowWindow(FMX.Platform.Win.ApplicationHWND, SW_HIDE);
  Application.Run;
end.

Код формы:

unit Unit2;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  FMX.Controls.Presentation, FMX.StdCtrls, Unit3, Winapi.Windows, Winapi.Messages, FMX.Platform.Win, ComObj;

type
  TForm2 = class(TForm)
    procedure CreateHandle; override;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.fmx}

procedure TForm2.CreateHandle;
begin
 inherited CreateHandle;
  SetWindowLong(WindowHandleToPlatform(Handle).Wnd, GWL_EXSTYLE,
    GetWindowLong(WindowHandleToPlatform(Handle).Wnd, GWL_EXSTYLE) or WS_EX_APPWINDOW);
end;


end.

 

Рекомендуемые сообщения

  • 0
Опубликовано

Хм,  так вы когда делаете  клик по иконки на панели задач чтобы развернуть приложение, вы запускаете второй экземпляр приложения.

Это стандартное поведение ОС. Вам надо запретить запуск второй копии приложения просто!

  • 0
  • Модераторы
Опубликовано
В 06.02.2018 в 14:23, Winexcel сказал:

Здравствуйте, хотелось бы задать подобный вопрос пользователя AlexG.

На форуме работает упоминание @AlexG

  • 0
Опубликовано
В 07.02.2018 в 00:13, wamaco сказал:

Хм,  так вы когда делаете  клик по иконки на панели задач чтобы развернуть приложение, вы запускаете второй экземпляр приложения.

Это стандартное поведение ОС. Вам надо запретить запуск второй копии приложения просто!

Можете дать ссылку на документацию msdn где такое написано? Первый раз слышу

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...