Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 31/12/2016, à 05:12

jackos

wxpython : pas d'icone menu

Bonjour,
je n'arrive pas à afficher une icone dans un menu avec wxpython.

quit = wx.MenuItem(file, 105, '&Quit\tCtrl+Q', 'Quit the Application')
quit.SetBitmap(wx.Image('stock_exit-16.png',wx.BITMAP_TYPE_PNG).ConvertToBitmap())
file.AppendItem(quit)

j'ai testé l'exemple du site https://wiki.wxpython.org/AnotherTutorial#wx.MenuBar ou d'autres site. j'ai une icone png 16x16 dans le dossier, et pas de message d'erreur lorsque je lance le script en terminal

Si je test les exemples avec les toolsbars, l'icone fonctionne bien https://wiki.wxpython.org/AnotherTutorial#wx.ToolBar

le code d'exemple complet:

#!/usr/bin/python

# menu1.py

import wx

class MyMenu(wx.Frame):
    def __init__(self, parent, id, title):
        wx.Frame.__init__(self, parent, id, title, wx.DefaultPosition, wx.Size(200, 150))

        menubar = wx.MenuBar()
        file = wx.Menu()
        edit = wx.Menu()
        help = wx.Menu()
        file.Append(101, '&Open', 'Open a new document')
        file.Append(102, '&Save', 'Save the document')
        file.AppendSeparator()
        quit = wx.MenuItem(file, 105, '&Quit\tCtrl+Q', 'Quit the Application')
        quit.SetBitmap(wx.Image('stock_exit-16.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap())
        file.AppendItem(quit)

        menubar.Append(file, '&File')
        menubar.Append(edit, '&Edit')
        menubar.Append(help, '&Help')
        self.SetMenuBar(menubar)
        self.CreateStatusBar()

class MyApp(wx.App):
    def OnInit(self):
        frame = MyMenu(None, -1, 'menu1.py')
        frame.Show(True)
        return True

app = MyApp(0)
app.MainLoop()

je suis sous ubuntu 14.04
wink

Hors ligne

#2 Le 31/12/2016, à 11:49

mandeb

Re : wxpython : pas d'icone menu

Bonjour,
J'ai testé ton exemple sur ma config et ça fonctionne parfaitement.
Comme je n'avais pas le fichier image de l'exemple j'en ai pris un au hasard sur le net, converti en PNG avec Gimp et ça a fonctionné du premier coup.
Pour moi (amha) le code est bon, cela vient peut être de l'image ? essaie de tester avec un autre fichier image...
@+
YB

Hors ligne

#3 Le 31/12/2016, à 13:56

jackos

Re : wxpython : pas d'icone menu

bonjour mandeb,

j'ai testé plusieurs images avec différentes tailles (sous 14.04 ou 12.04), si tu peut tester celle ci https://cdn1.iconfinder.com/data/icons/ … er-128.png (chez moi cela ne fonctionne pas sad )

au niveau des wxpython, j'ai la version 2.8 et 3.0 (je sais pas si c'est cela qui met le bronx?) j'ai testé dans désinstaller quelques uns sans résultat

$ dpkg --get-selections | grep wxb
..
..
python-wxglade					install
python-wxgtk2.8					install
python-wxgtk3.0					install
python-wxgtk3.0-dev				install
python-wxtools					install
python-wxversion				install
wx2.8-examples					install

pourtant sur leur site https://wiki.wxpython.org/How%20to%20in … x_-_Debian il parle seulement d'un  apt-get install python-wxgtk2.8

je viens de testé sur une 16.04 32bit, cela fonctionne (je pense que c'est plutot une histoire de paquet)

Hors ligne

#4 Le 31/12/2016, à 15:34

mandeb

Re : wxpython : pas d'icone menu

Ton icone twitter-128.png fonctionne chez moi.
Je suis sous linux mint 18.1 64 bits, python 2.7.12, j'ai obtenu wx par wxpython-tools du dépôt.

$ dpkg --get-selections | grep wx
libwxbase3.0-0v5:amd64            install
libwxgtk3.0-0v5:amd64                install
python-wxgtk3.0                    install
python-wxtools                    install
python-wxversion                        install

Hors ligne

#5 Le 31/12/2016, à 17:34

jackos

Re : wxpython : pas d'icone menu

merci pour tes test mandeb,

je vais laisser tomber, en attendant de réinstaller une 16.04.
je peut pas supprimer certains paquets de la 2.8 car il me désinstalle pgadmin3 et filezilla

Bonne fêtes wink

Hors ligne