Несколько окон в виде одного значка на панели задач - PullRequest
0 голосов
/ 25 декабря 2018

В настоящее время я пишу стандартное приложение C ++ Qt GUI (т.е. через Qt Creator).

По сути, я пытаюсь создать приложение, которое работает со следующими одноэлементными классами:

  1. класс MainWindow, отвечающий за логику ядра;
  2. класс ServerWindow, отвечающий за соединение с сервером;
  3. класс пользователя,который возвращается (в виде указателя) классом ServerWindow после успешной аутентификации;
  4. класс данных, который инициализируется данными, полученными через ServerWindow после аутентификации пользователя.

    Алгоритм:
  5. Создайте MainWindow и создайте класс Data;он также содержит указатель (nullptr на этом шаге) на текущего пользователя.
  6. Когда конструктор завершает работу, выполняется ServerWindow (производное от QDialog) (через задержанное соединение Qt * 1024)*).На этом этапе MainWindow замораживается и становится невидимым, пока ServerWindow не выдаст один из сигналов (зарегистрирован, сбой).ServerWindow имеет установленный флаг модального режима.
  7. Когда ServerWindow завершает работу, указатель на текущего пользователя передается в MainWindow.ServerWindow также знает о классе данных и инициализирует его.

Основная проблема заключается в том, что на шаге 2 значок приложения на панели задач (я использую ОС Windows) не отображается.Когда MainWindow находится в автономном режиме (т. Е. Не отображается, невидимо через setVisibility (false)), значок отсутствует.Это очень раздражает, особенно если открыто множество других приложений.Итак, мой вопрос: что я могу сделать, чтобы ServerWindow создавал значок приложения на панели задач без отображения MainWindow?

Дополнительный, кстати, вопрос о возможном повторном мастеринге архитектуры приложения.В моей небольшой библиотеке я не могу найти книг о разработке подобных приложений.Честно говоря, я даже не могу понять, какие слова я должен передать в строку поиска Google.Любой совет?

Предварительно, спасибо за любые ответы!

...