本文整理汇总了Python中scal3.ui_gtk.mywidgets.multi_spin.integer.IntSpinButton.set_range方法的典型用法代码示例。如果您正苦于以下问题:Python IntSpinButton.set_range方法的具体用法?Python IntSpinButton.set_range怎么用?Python IntSpinButton.set_range使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类scal3.ui_gtk.mywidgets.multi_spin.integer.IntSpinButton
的用法示例。
在下文中一共展示了IntSpinButton.set_range方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: WidgetClass
# 需要导入模块: from scal3.ui_gtk.mywidgets.multi_spin.integer import IntSpinButton [as 别名]
# 或者: from scal3.ui_gtk.mywidgets.multi_spin.integer.IntSpinButton import set_range [as 别名]
class WidgetClass(common.WidgetClass):
def __init__(self, event):## FIXME
common.WidgetClass.__init__(self, event)
######
sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL)
######
hbox = gtk.HBox()
label = gtk.Label(_('Scale'))
label.set_alignment(0, 0.5)
sizeGroup.add_widget(label)
pack(hbox, label)
self.scaleCombo = common.Scale10PowerComboBox()
pack(hbox, self.scaleCombo)
pack(self, hbox)
####
hbox = gtk.HBox()
label = gtk.Label(_('Start'))
label.set_alignment(0, 0.5)
sizeGroup.add_widget(label)
pack(hbox, label)
self.startSpin = IntSpinButton(-maxStart, maxStart)
self.startSpin.connect('changed', self.startSpinChanged)
pack(hbox, self.startSpin)
pack(self, hbox)
####
hbox = gtk.HBox()
self.endRelCombo = gtk.ComboBoxText()
for item in ('Duration', 'End'):
self.endRelCombo.append_text(_(item))
self.endRelCombo.connect('changed', self.endRelComboChanged)
sizeGroup.add_widget(self.endRelCombo)
pack(hbox, self.endRelCombo)
self.endSpin = IntSpinButton(-maxDur, maxDur)
pack(hbox, self.endSpin)
pack(self, hbox)
####
self.endRelComboChanged()
def endRelComboChanged(self, combo=None):
rel = self.endRelCombo.get_active()
start = self.startSpin.get_value()
end = self.endSpin.get_value()
if rel==0:## reletive(duration)
self.endSpin.set_range(1, maxStart)
self.endSpin.set_value(max(1, end-start))
elif rel==1:## absolute(end)
self.endSpin.set_range(start+1, maxStart)
self.endSpin.set_value(max(start+1, start+end))
def startSpinChanged(self, spin=None):
if self.endRelCombo.get_active() == 1:## absolute(end)
self.endSpin.set_range(self.startSpin.get_value()+1, maxStart)
def updateWidget(self):
common.WidgetClass.updateWidget(self)
self.scaleCombo.set_value(self.event.scale)
self.startSpin.set_value(self.event.start)
self.endRelCombo.set_active(0 if self.event.endRel else 1)
self.endSpin.set_value(self.event.end)
def updateVars(self):## FIXME
common.WidgetClass.updateVars(self)
self.event.scale = self.scaleCombo.get_value()
self.event.start = self.startSpin.get_value()
self.event.endRel = (self.endRelCombo.get_active()==0)
self.event.end = self.endSpin.get_value()