2016-08-29 4 views
0

Je travaille sur une application wxPython dans laquelle j'ai utilisé un wx.ListCtrl avec 12 colonnes. Le contrôle est rempli avec certaines valeurs en cliquant sur un bouton ... disons Nom, Âge, Classe, Maison ... etc.wxPython comment obtenir l'ID de ligne de l'élément de liste qui est double-cliqué

Maintenant je veux créer un événement de double clic qui lors du double cliquage d'un élément de liste devrait apparaître -up un msgbox avec la valeur Nom, mais je ne peux pas obtenir le numéro de ligne ou ID de l'élément de ligne qui est double-cliqué ...

voici mon code: -

self.subList.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.DblClickOptions) 

def DblClickOptions(self, extra): 
    itm = self.subList.GetItem(itemId='???', col=1) 
    itm_text = itm.GetText() 
    ctypes.windll.user32.MessageBoxA(0, itm_text, "title", 1) 

dans le code ci-dessus je dois obtenir le numéro de ligne de l'élément de la liste qui est double-cliqué à la place de '???'

Aidez-moi s'il vous plaît à aider avec ceci.

Cordialement, Premanshu

Répondre

0

http://xoomer.virgilio.it/infinity77/wxPython/Events/wx.ListEvent.html#methods-summary

(généralement la variable que vous avez nommé extra est nommé event ou evt ...)

extra.GetIndex() serait l'ID de ligne

extra.GetText() serait le texte de la ligne

etc

+0

c'est génial :). Merci Joran pour votre aide. Je suis nouveau à Python et c'est ma première tentative de développer quelque chose. – Premanshu

+0

Je viens de sauter dans le codage et je n'ai pas suivi de tutoriel ... donc je ne connaissais pas la bonne façon de coder ... nommé extra à la place de l'événement ... en fait je l'ai mis quand j'ai eu une erreur en disant la méthode a besoin de 1 argument et a fourni 1 même quand je ne l'ai pas appelé avec un argument, donc pour le résoudre il suffit de mettre un argument supplémentaire dans la méthode elle-même. – Premanshu

+0

aussi seriez-vous assez aimable pour répondre à un autre post de la mienne dans ce même forum .... Je vais vous transmettre cela sur votre carte d'identité. S'il vous plaît, aidez si vous le pouvez aussi ... merci beaucoup à l'avance – Premanshu