Qt: comment faire la décoration riche fenêtre pop-up à la place la valeur par défaut QSystemTrayIcon fenêtre pop-up

StackOverflow https://stackoverflow.com/questions/5805081

  •  24-10-2019
  •  | 
  •  

Question

J'ai demande de notification simple, et j'utilise Qt 4.7.1 avec C ++ pour écrire une application qui se trouve dans la zone de notification. Chaque fois qu'un message est; J'ai besoin pour pop-up d'une fenêtre. Mais, je en ai besoin d'être riche (à savoir, je veux ajouter de la couleur et des images à lui). Cependant, tout ce que j'ai est le message contextuel par défaut. Comment puis-je créer un nouveau plus riche qui sera toujours pop-up au-dessus de l'icône de la barre?

Était-ce utile?

La solution

Toutes les classes de widget qt peuvent être coiffés par stylesheets, selon où créer votre pop-up (concepteur, ou dans le code) lui attribuer une feuille de style avec le look que vous voulez qu'il ait. Vous pouvez tester dans les feuilles de style concepteur en attribuant un style à un widget en utilisant le menu contextuel du widget

Après un examen plus approfondi, les met d'appel QSystemTrayIcon::showMessage() un système notification. Ce que je ne sais pas si elle peut être appelée. Le fichier qsystemtrayicon_win.cpp dans la distribution qt montre une solution de contournement et montre une façon de la façon de trouver l'emplacement de l'icône dans la barre (voir QSystemTrayIconSys::findIconGeometry). Une fois que vous avez l'endroit où vous pouvez apparaître votre propre fenêtre à cet endroit. Je ne regardais pas à fond, je ne sais pas si vous pouvez obtenir à l'emplacement de l'icône avec les informations que vous avez sur le côté public de Qt. Vous pourriez avoir à aller toutes les fenêtres avec cela.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top