Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[débutant] Afficher une petite fenêtre sans barre de titre

2 réponses
Avatar
Damien
Bonjour,
Je suis en train de passer sous Python depuis Delphi et PHP. En
complément d'une appli web PHP+MySQL je suis en train de développer un
outil qui affiche des rappels sous forme de petites fenêtres à cliquer
dans un coin de l'écran.

A priori, un simple dialog ne suffirait pas : la fenêtre doit être assez
petite, je veux pouvoir avoir plusieurs fenêtres et obliger
l'utilisateur à donner un motif pour fermer l'une d'elles.

Je pensais à quelquechose comme l'alerte nouveau message de Thunderbird.

Ca se programme comment en Python ? S'agit-il de bricoler un dialog
existant ? Existe-t-il des classes toutes faites ?

Merci d'avance pour vos pistes !

--
Damien

"All parts should go together without forcing. You must remember that
the parts you are reassembling were disassembled by you. Therefore, if
you can't get them together again, there must be a reason. By all means,
do not use hammer." -- IBM maintenance manual, 1975

2 réponses

Avatar
regis
Le Fri, 13 May 2005 15:20:18 +0200, Damien a écrit :

Bonjour,
Je suis en train de passer sous Python depuis Delphi et PHP. En
complément d'une appli web PHP+MySQL je suis en train de développer un
outil qui affiche des rappels sous forme de petites fenêtres à cliquer
dans un coin de l'écran.

A priori, un simple dialog ne suffirait pas : la fenêtre doit être assez
petite, je veux pouvoir avoir plusieurs fenêtres et obliger
l'utilisateur à donner un motif pour fermer l'une d'elles.

Je pensais à quelquechose comme l'alerte nouveau message de Thunderbird.

Ca se programme comment en Python ? S'agit-il de bricoler un dialog
existant ? Existe-t-il des classes toutes faites ?

Merci d'avance pour vos pistes !


Tu peux utiliser comme base ShapedWindow.py inclue dans la démo de
wxPython.

Sinon, si c'est un simple rectangle gris, tu peux utiliser ça :
import wx

class MaPopup(wx.PopupWindow):
def __init__(self,parent):
wx.PopupWindow.__init__(self,parent,wx.SIMPLE_BORDER)
txt = wx.StaticText(self,
-1,
"Bonjour le mondenAvec une popup wxPython",
pos=(10,10))
s = txt.GetBestSize()
self.SetSize((s.width+20,s.height+20))
self.CentreOnScreen()

class App(wx.App):
def OnInit(self):
f = wx.Frame(None,-1,"")
MaPopup(f).Show()
return True
App().MainLoop()


Tu peux aussi utiliser un wx.MiniFrame pour faire genre vieille version
ICQ sur mac.

Bon courage

Regis

--
Beuvez beuvez, mais bourré jamais

Avatar
Damien
(snip)
Tu peux utiliser comme base ShapedWindow.py inclue dans la démo de
wxPython.

Sinon, si c'est un simple rectangle gris, tu peux utiliser ça :
(snip)

Tu peux aussi utiliser un wx.MiniFrame pour faire genre vieille version
ICQ sur mac.
(snip)


Merci pour toutes ces suggestions ! Ca va me donner du grain à moudre...
Je me lance !

Le MaPopup.show() va-t-il _créer_ une instance de fenêtre ou juste
montrer celle qui a été construite à l'init ? Je pense avoir besoin de
les créer/détruire à la volée ?

@+

--
Damien