2017-06-13 8 views
0

に更新されていない私は、コンボボックスを作成していますように:コンボボックスの値がイベントwxPythonを

combo= ['a', 'b', 'c'] 
self.stm_checkpoint_drop=wx.ComboBox(self.panel, -1, value='Options', choices=combo) 
self.stm_checkpoint_drop.Bind(wx.EVT_COMBOBOX, self.oncombo) 

def oncombo(self,event): 
    selected = self.stm_checkpoint_drop.GetValue() 

選択した変数は、デフォルト値「オプション」のまま。選択された変数に格納されたコンボリストから選択された値を取得する方法

答えて

0

コードが正常に動作しない理由がわかりません。明白なエラーはないようです。これが機能していることを確認し、コードに対してチェックしてください。

import wx 

class Myframe(wx.Frame): 
    def __init__(self): 
     wx.Frame.__init__(self, None) 
     self.my_choices = ["Option A","Option B","Option C"] 
     self.panel = wx.Panel(self) 
     self.cbx = wx.ComboBox(self.panel, -1, value="Choose an Option", pos=(10,30), size=(300,30),choices=self.my_choices) 
     self.cbx.Bind(wx.EVT_COMBOBOX, self.on_selection) 
     self.txt1 = wx.TextCtrl(self.panel, -1, "Selected Value", pos=(10,100), size=(300,30)) 
     self.txt2 = wx.TextCtrl(self.panel, -1, "Selected Selection", pos=(10,130), size=(300,30)) 
     self.txt3 = wx.TextCtrl(self.panel, -1, "Selected String", pos=(10,160), size=(300,30)) 

    def on_selection(self, evt): 
     Choice = self.cbx.GetValue() 
     self.txt1.SetValue(Choice) 
     Choice = self.cbx.GetSelection() 
     self.txt2.SetValue(str(Choice)) 
     Choice = self.cbx.GetStringSelection() 
     self.txt3.SetValue(Choice) 

if __name__ == "__main__": 
    App = wx.App() 
    Myframe().Show() 
    App.MainLoop() 
関連する問題