2010-05-17 15 views
2

J'ai besoin de créer/concevoir des fenêtres pop-up systray QT, je pensais à créer des fenêtres personnalisées que dérivées de QDialog, de sorte qu'il pourrait regarder mieux que l'ordinaire "Information , d'avertissement, les styles critiques »
ma question est de savoir comment puis-je détecter la position du systray de bureau, alors comment pourrait donner les fenêtres pop-up
le look and feel d'une systray pop-upQT comment détecter la zone systray pour créer des fenêtres contextuelles systary

Répondre

6

Vous pouvez utiliser le rectangle donné par QSystemTrayIcon::geometry() pour connaître avec précision la position du systray du bureau. La méthode géométrique indique la position dans les coordonnées de l'écran de la barre d'état système. Pour plus d'informations, voir le documentation.

+0

Je crains que, au mieux, cela ne fonctionne que sur certaines plates-formes. Dans mon environnement Mint/GNOME, cela retourne un 'QRect (0, 0, 22, 22)'. L'icône ressemble à 22 × 22, il semble donc que nous puissions obtenir sa taille, mais pas sa position, ce qui est vraiment nécessaire. (L'icône de mon bac est située aux trois quarts vers la droite de l'écran, donc (0, 0) n'est certainement pas correct.) –