Modifier dynamiquement le choix dans un wx.Zone de liste déroulante()
Je n'ai pas trouvé une meilleure façon de changer les différents choix dans un wx.Zone de liste déroulante() de swap de l'ancienne zone de liste déroulante avec un nouveau. Est-il un meilleur moyen?
Oerjan Pettersen
#!/usr/bin/python
#20_combobox.py
import wx
import wx.lib.inspection
class MyFrame(wx.Frame):
def __init__(self, *args, **kwargs):
wx.Frame.__init__(self, *args, **kwargs)
self.p1 = wx.Panel(self)
lst = ['1','2','3']
self.st = wx.ComboBox(self.p1, -1, choices = lst, style=wx.TE_PROCESS_ENTER)
self.st.Bind(wx.EVT_COMBOBOX, self.text_return)
def text_return(self, event):
lst = ['3','4']
self.st = wx.ComboBox(self.p1, -1, choices = lst, style=wx.TE_PROCESS_ENTER)
class MyApp(wx.App):
def OnInit(self):
frame = MyFrame(None, -1, '20_combobox.py')
frame.Show()
self.SetTopWindow(frame)
return 1
if __name__ == "__main__":
app = MyApp(0)
# wx.lib.inspection.InspectionTool().Show()
app.MainLoop()
OriginalL'auteur Orjanp | 2009-03-25
Vous devez vous connecter pour publier un commentaire.
wx.Zone de liste déroulante dérive de wx.ItemContainer, qui a des méthodes pour En annexant, De compensation, Insérer et La suppression éléments, toutes ces méthodes sont disponibles sur wx.Zone de liste déroulante.
Une façon de faire ce que vous voulez serait de définir le text_return() la méthode comme suit:
Cool je cherchais, mais pour une raison que la fonction n'est pas documentée.
Merci. AppendItems est dans le nouveau docs, mais pas dans les anciens.
Docs pourrait être atteint à l'adresse wxpython.org/Phoenix/docs/html/...
Mise à jour : doc liens sont en bas de
OriginalL'auteur Moe