J'ai une (seule ligne) TextCtrl. L'utilisateur tape des données dans ceci. Lorsqu'ils appuient sur Entrée, le contenu de la boîte doit être extrait afin qu'ils puissent être traités. Je ne peux pas comprendre comment attraper entrer être pressé. D'après les docs, avec le style wx.TE_PROCESS_ENTER défini sur ma TextCtrl, il devrait générer un événement wx.EVT_COMMAND_TEXT_ENTER quand on appuie sur entrée dans la boîte, que je pourrais alors attraper. Cependant, wx.EVT_COMMAND_TEXT_ENTER semble ne pas exister (je reçois le "module n'a pas d'attribut EVT_COMMAND_TEXT_ENTER), donc je suis un peu coincé. Google obtient juste quelques hits de personnes qui se plaignent wx.EVT_COMMAND_TEXT_ENTER ne fonctionne pas, donc je suppose que je besoin d'une autre façon de le faire.Obtenir du texte lorsque l'entrée est enfoncée dans une zone de texte dans wxPython
5
A
Répondre
4
Je ne l'ai jamais vu wx.EVT_COMMAND_TEXT_ENTER
. Je l'ai utilisé wx.EVT_TEXT_ENTER
bien ...
0
utilisation style = wx.TE_PROCESS_ENTER
dans TextCtrl et se lier avec Event wx.EVT_TEXT_ENTER
self.Text_Enter = wx.TextCtrl(self , 2 ,style = wx.TE_PROCESS_ENTER, size =(125,150), pos = (170,0))
self.Text_Enter.SetForegroundColour(wx.RED)
self.Bind(wx.EVT_TEXT_ENTER, self.Txt_Ent, id = 2)
def Txt_Ent(self,event):
msg1 = (str(self.Text_Enter.GetValue()))
wx.MessageBox(msg1)
Ah, oui, C'est l'événement généré. Je suppose que c'est une différence entre wxPython et la version C++, alors. EVT_COMMAND_TEXT_ENTER est mentionné ici: http://docs.wxwidgets.org/stable/wx_wxtextctrl.html – Sam