def initRateControls(self):
"""Initialize the sample rate and poll size controls.
"""
rateSizer = wx.BoxSizer(orient=wx.VERTICAL)
pollSizeControlBox = widgets.ControlBox(self, label='Poll Size', orient=wx.HORIZONTAL)
self.pollSizeSpinCtrl = wx.SpinCtrl(self, style=wx.SP_WRAP,
value=str(self.src.pollSize), min=1, max=32)
pollSizeControlBox.Add(self.pollSizeSpinCtrl, flag=wx.ALL | wx.EXPAND, border=10)
self.Bind(wx.EVT_SPINCTRL, self.setPollSize, self.pollSizeSpinCtrl)
rateSizer.Add(pollSizeControlBox, proportion=0,
flag=wx.BOTTOM | wx.RIGHT | wx.TOP, border=10)
sampRates = np.array((128,256,512,1024))
self.sampRateRadios = [wx.RadioButton(self, label=str(sampRates[0])+'Hz', style=wx.RB_GROUP)] +\
[wx.RadioButton(self, label=str(sr)+'Hz') for sr in sampRates[1:]]
self.sampRateRadios[0].SetValue(True)
sampRateControlBox= widgets.ControlBox(self, label='Sample Rate', orient=wx.VERTICAL)
for sr,rbtn in zip(sampRates, self.sampRateRadios):
def sampRadioWrapper(event, sr=sr):
self.src.setSampRate(sr)
self.Bind(wx.EVT_RADIOBUTTON, sampRadioWrapper, id=rbtn.GetId())
for rbtn in self.sampRateRadios[:-1]:
sampRateControlBox.Add(rbtn, proportion=0,
flag=wx.TOP | wx.LEFT | wx.RIGHT, border=10)
sampRateControlBox.Add(self.sampRateRadios[-1], proportion=0, flag=wx.ALL, border=10)
rateSizer.Add(sampRateControlBox, proportion=0,
flag=wx.BOTTOM | wx.RIGHT, border=10)
self.sizer.Add(rateSizer)
评论列表
文章目录