-1
2番目のパネルで表示したいデータが正確に表示されないのはなぜですか? チェックボックスはチェック可能ではありません。2番目のフレーム(パネル)の結果データが正確に表示されない
コードをすべて実行しようとすると、私の意図がわかります。
import wx
from wx.lib.pubsub import Publisher
import sys
reload(sys)
sys.setdefaultencoding('cp1252')
########################################################################
class OtherFrame(wx.Frame):
#----------------------------------------------------------------------
def __init__(self):
wx.Frame.__init__(self, None, wx.ID_ANY, "Secondary Frame for showing ResulT",size=(400,400))
self.panel = OtherPanel(self)
class OtherPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent=parent)
self.frame = parent
########################################################################
class MainPanel(wx.Panel):
#----------------------------------------------------------------------
def __init__(self, parent):
wx.Panel.__init__(self, parent=parent)
self.frame = parent
self.postal_code = wx.TextCtrl(self, value="")
self.limit = wx.TextCtrl(self,value="")
showSecondFrame = wx.Button(self, label="Catching")
showSecondFrame.Bind(wx.EVT_BUTTON, self.ShowFrame)
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add(self.postal_code, 0, wx.ALL|wx.CENTER, 5)
sizer.Add(self.limit, 0, wx.ALL|wx.CENTER, 10)
sizer.Add(hideBtn, 0, wx.ALL|wx.CENTER, 5)
self.SetSizer(sizer)
#----------------------------------------------------------------------
def ShowFrame(self, event):
postal_code = self.postal_code.GetValue()
limit = self.limit.GetValue()
new_frame = OtherFrame()
new_frame.Show()
print limit, postal_code
Y = 10
i=0
all_data = ['Far Away 1337','Street Dance 101','Necro Lover 152','N0stalgene 689']
for address in all_data:
Y += 20
i += 1
self.cb = wx.CheckBox(new_frame, label=str(address+"-"+postal_code+"-"+limit), pos=(10,Y))
########################################################################
class MainFrame(wx.Frame):
#----------------------------------------------------------------------
def __init__(self):
wx.Frame.__init__(self, None, wx.ID_ANY, "TEST1NG")
self.panel = MainPanel(self)
self.new_frame = OtherFrame()
#----------------------------------------------------------------------
if __name__ == "__main__":
app = wx.App(False)
frame = MainFrame()
frame.Show()
app.MainLoop()