1 import wx
2
5 wx.Panel.__init__(self, parent, id, wx.DefaultPosition, wx.DefaultSize, 0 )
6 sizer = wx.BoxSizer(wx.VERTICAL)
7
8
9
10
11
12
13 txt_habits = wx.TextCtrl(self, 30,
14 "Smoker - 30/day.\n"
15 "Alcohol - 30gm/day (Previously very heavy.\n",
16 wx.DefaultPosition,wx.DefaultSize, style=wxTE_MULTILINE|wx.NO_3D|wx.SIMPLE_BORDER)
17 txt_habits.SetInsertionPoint(0)
18
19 txt_riskfactors = wx.TextCtrl(self,30,
20 "Hypercholesterolaemia \n"
21 "Current Smoker \n"
22 "NIDDM \n"
23 "No exercise data recorded\n",
24 wx.DefaultPosition,wx.DefaultSize, style = wx.TE_MULTILINE)
25 txt_riskfactors.SetInsertionPoint(0)
26
27
28
29
30
31
32
33 text_sizer = wx.BoxSizer(wx.HORIZONTAL)
34 text_sizer.Add(txt_habits,1,wx.EXPAND)
35 text_sizer.Add(txt_riskfactors,1,wx.EXPAND)
36 self.SetSizer(text_sizer)
37 text_sizer.Fit(self)
38 self.SetAutoLayout(True)
39
40
41 self.lists = { 'habit': txt_habits, 'risk': txt_riskfactors }
42
43 print self.GetData()
44
45 self.SetData( { 'habit': ['smoker', 'drinks 20/day'] , 'risk': [ 'cholesterol', 'diabetes'] } )
46
47 - def getTextCtrl(self, which):
48 return self.lists.get(which, "risk")
49
57
59 map = {}
60 for k in self.lists.keys():
61 map[k] = self.lists[k].GetValue().split('\n')
62 return map
63
64
65 if __name__ == "__main__":
66 app = wxPyWidgetTester(size = (400, 200))
67 app.SetWidget(HabitsRiskFactors, -1)
68 app.MainLoop()
69