Salut à toutes et à tous
Je débute complètement avec wx, et je m'efforce de faire une simple trayicon.
Bon, pas trop difficile en soi, mais wx semble insister pour afficher les erreurs dans une fenêtre.
C'est une belle idée en soi, mais...
La fenêtre se taille un peu trop vite pour que je puisse lire (il me laisse environ 1/5 de seconde, soit le temps qu'elle s'ouvre et se ferme)
Alors, jusque là, la seule solution que j'ai trouvé c'est le screenshot à l'arrache, mais c'est quand même pas très pratique...
Une meilleure solution pour éviter que ça se vire tout de suite ?
Voici mon code, le souci est peut-être là:
Edit: Bon, j'ai trouvé le souci ici: OnInit doit retourner un boolean. Donc ça c'est reglé. Mais si vous avez des idées pour rendre le message affichable...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 import wx import const class TrayIcon(wx.TaskBarIcon): types = { 'jpg': wx.BITMAP_TYPE_JPEG, 'png': wx.BITMAP_TYPE_PNG, 'gif': wx.BITMAP_TYPE_GIF } def __init__(self, iconPath, tooltip): wx.TaskBarIcon.__init__(self) try: ext = iconPath.rsplit(".", 1)[1] iconType = TrayIcon.types[ext] except KeyError: raise ValueError("Unknown icon type") icon = wx.Icon(iconPath, iconType) self.SetIcon(icon, tooltip) wx.EVT_TASKBAR_RIGHT_UP(self, self.popMenu) def popMenu(self): print "Menu please" class UI(wx.App): def OnInit(self): self.__tray = TrayIcon(const.iconPath, "Web server") def main(): ui = UI() ui.MainLoop() if __name__ == "__main__": main()
Partager