IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

wxPython Discussion :

Sélection impossible d'un Popupmenu d'une TaskBarIcone


Sujet :

wxPython

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de alexdevl
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 265
    Par défaut Sélection impossible d'un Popupmenu d'une TaskBarIcone
    Bonjour,
    J'essaie de lier des items de popupmenu d'une TaskBarIcone à une fonction self.OnPopupItemSelected.
    Le popupmenu s'affiche mais il n'y a pas de sélection possible malgré cette ligne ;
    ''self.Bind(wx.EVT_MENU, self.OnPopupItemSelected, item)''

    Auriez vous une idée ?

    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    !/usr/bin/env python
    #coding=utf-8
     
    import wx
     
    class frame_emainfo(wx.Frame):
        """Frame emainfo"""
        def __init__(self, *args, **kwds):
            """Création de la frame"""
            kwds["style"] = wx.DEFAULT_FRAME_STYLE^wx.MINIMIZE
            wx.Frame.__init__(self, *args, **kwds)
            self.nLignePopup=4 # Nombre de lignes à afficher lors du popup
            self.__create_wx()
     
        def __create_wx(self):
            """Création des objet WX"""
     
            self.popupmenu = wx.Menu() # création du Pop up menu
            for n,compte in enumerate(range(self.nLignePopup)) : 
                text=str(n)           # Remplissage de chaque ligne avec le texte du n°
                item=self.popupmenu.Append(-1, text)     # Création des item pour bindings
                print item
                self.Bind(wx.EVT_MENU, self.OnPopupItemSelected, item)# Binding du menu
     
            self.tbicon=wx.TaskBarIcon()
            icone=wx.Icon("emainfo.ico", wx.BITMAP_TYPE_ICO) # ==> A lier à une icone 
            self.tbicon.SetIcon(icone,"icone")
            wx.EVT_TASKBAR_RIGHT_DOWN(self.tbicon, self.OnShowPopup)
     
        def OnShowPopup(self, event):
            """Affichage du menu contextuel"""
            print event
            self.tbicon.PopupMenu(self.popupmenu)
     
        def OnPopupItemSelected(self, event):
            """Sélection d'un item"""
            item = self.popupmenu.FindItemById(event.GetId())
            text = item.GetText()
            wx.MessageBox("Item séléctionné :" + text)
     
    if __name__ == "__main__":
        app = wx.PySimpleApp(0)
        wx.InitAllImageHandlers()
        frame_1 = frame_emainfo(None, -1, "")
        app.SetTopWindow(frame_1)
        app.MainLoop()

  2. #2
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    Salut,

    essaye en modifiant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            for n,compte in enumerate(range(self.nLignePopup)) : 
                text=str(n)           # Remplissage de chaque ligne avec le texte du n°
                item=self.popupmenu.Append(-1, text)     # Création des item pour bindings
                print item
                self.Bind(wx.EVT_MENU, self.OnPopupItemSelected, item)# Binding du menu
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            for n,compte in enumerate(range(self.nLignePopup)) : 
                text=str(n)           # Remplissage de chaque ligne avec le texte du n°
                item=self.popupmenu.Append(-1, text)     # Création des item pour bindings
            self.popupmenu.Bind(wx.EVT_MENU, self.OnPopupItemSelected)# Binding du menu

  3. #3
    Membre expérimenté Avatar de alexdevl
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 265
    Par défaut
    Ca marche impeccable !!!
    Merci de ton aide

    Alex

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Sélection de la 1ere valeur d'une DDliste impossible.
    Par étudiant49 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 21/07/2010, 10h15
  2. Réponses: 1
    Dernier message: 08/09/2006, 15h56
  3. Sélection avec la souris hors d'une application
    Par carlg dans le forum API, COM et SDKs
    Réponses: 17
    Dernier message: 08/03/2006, 10h02
  4. Réponses: 9
    Dernier message: 17/10/2005, 17h13
  5. Sélection de toute les tables d'une base
    Par lord_paco dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 21/07/2003, 14h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo