#1 Le 20/10/2018, à 22:37
- FabArd08
Modifier l'infobulle d'une application dans le dock en python
bonjour à tous,
Je suis débutant en python et je n'arrive pas à trouver comment modifier l'infobulle qui apparaît lorsqu'on passe la souris sur l’icône d'une application qui est dans le dock.
J'essaie de modifier un programme écrit en python qui s'appelle bCNC.
Lorsque que je lance cette application sur mon poste (Ubuntu 18.04), l’icône de l'application apparaît dans le dock mais lorsque je passe la souris dessus l'infobulle "TopLevel" s'affiche au lieu du nom de l'application. Dans la barre supérieure également "Toplevel" s'affiche au lieu du nom de l'application.
https://www.casimages.com/i/18102011463777571.png.html
Cela fait deux jours que je compulse le net et je n'ai pas trouvé de solution. Le titre le l'application a bien été défini pourtant.
class Application(Toplevel,Sender):
def __init__(self, master, **kw):
Toplevel.__init__(self, master, **kw)
Sender.__init__(self)
if sys.platform == "win32":
self.iconbitmap("bCNC.ico")
else:
#FabArd self.iconbitmap("@%s/bCNC.xbm"%(Utils.prgpath))
#FabArd methode 1 pour fichiers bitmap
#FabArd self.iconbitmap("@bCNC.xbm")
#FabArd self.iconmask("@bCNC-mask.xbm")
#FabArd methode 2 pour fichiers image
icon=PhotoImage(file="bCNC.png")
self.tk.call('wm','iconphoto',self._w, icon)
self.title(Utils.__prg__)
self.widgets = []
Si le titre de l'application est défini, pourquoi l'infobulle affiche-t-il le nom de la classe dont-il hérite ?
Comment modifier de cette infobulle ?
Merci de m'éclairer !
Dernière modification par FabArd08 (Le 20/10/2018, à 22:43)
Hors ligne
#2 Le 22/10/2018, à 17:02
- FabArd08
Re : Modifier l'infobulle d'une application dans le dock en python
Personne n'a ne serait-ce que que l'ombre d'une idée !!!
Pour ma part, j'ai fait des tests.
1° Essai avec une bibliothèque différente
import gi
import pygtk
import gtk
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
win = Gtk.Window()
win.set_title("Test")
win.set_tooltip_text("Test")
ostati=Gtk.StatusIcon(title='toto', has_tooltip=True, visible=True)
gtk_status_icon_set_tooltip_text(ostati, "Toto")
ostati.set_tooltip_text("Toto")
win.connect("destroy", Gtk.main_quit)
win.show_all()
Gtk.main()
et la l'infobulle affiche le nom du fichier "test.py"
2° J'ai exécuté bCNC sur un PC avec Lubuntu 18.10 (donc LxQt au lieu de Gnome) et la plus aucun problème. Une fois l'appli lancée, la barre des tâches affiche un bouton avec l’intitulé "bCN" et l'infobulle "bCNC".
Donc le problème semble venir de Gnome.
Quelqu'un saurait si il y une subtilité de Gnome pour résoudre ce problème ou bien s'il s'agit d'un bug !!!
Hors ligne
#3 Le 25/10/2018, à 16:07
- soshy
Re : Modifier l'infobulle d'une application dans le dock en python
Salut,
Je ne peux pas executer ton code parce qu'il doit manquer des imports et je dois pas avoir installé les bonnes lib, et je ne connais pas grand chose en python, mais a tout hasard, sur ton script initial, si tu mets
Toplevel.__init__(self, master, **kw)
Sender.__init__(self)
à la fin et non au début de l'init de ta classe, ça irait pas mieux ?
Hors ligne