2017-06-03 2 views
0

Je souhaite collecter les données de l'utilisateur dans la boîte de test. Alors, quand je clique sur un bouton, il doit me donner le nom de ce bouton dans la boîte de test Erreur: vous devez aussi omettre les lignes de la colonneErreur lors d'un événement click dans wxpython

for i in A: 


     hbox1=wx.BoxSizer(wx.HORIZONTAL) 



     btn = wx.Button(p, -1, i, (10,20)) 


     btn.myname = I 


     gs.Add(btn,0,) 


     self.Bind(wx.EVT_BUTTON, self.OnClick, btn) 


     self.t1=wx.TextCtrl(p) 


     gs.Add(btn,0,)  


     self.t1.Bind(wx.EVT_BUTTON, self.OnClick, btn) 


     gs.Add(hbox1) 

    p.SetSizer(gs) 


def OnClick(self, event): #When the button is clicked 

    name = event.GetEventObject().myname 

Répondre

2

Utilisez WX .TextCtrl: self.t1=wx.TextCtrl(p)

+0

et 'btn.myname = i' pas 'btn.myname = I' –

+0

@Rolf de sexony. Erreur typo –

+0

@phd toujours l'erreur: peut-être vous devez omettre le nombre de lignes ou de colonnes. Échec à Do insert(): trop d'éléments (181> 18 * 11). Ma grille a 18 colonnes et 11 lignes. –