滑块(wx.Slider)是一个窗口部件,它允许用户通过在该控件的尺度内拖动指示器来选择一个数值;步进(wx.SpinCtrl),也叫微调控制器,可以让用户不必使用键盘来输入一个数字量,通过点击自动加1。
程序清单:slider_spin.py
import wx
# 继承Frame
class SliderAndSpin(wx.Frame):
def __init__(self, *args, **kwargs):
super(SliderAndSpin, self).__init__(*args, **kwargs)
# 初始化窗口UI
self.init_ui()
def init_ui(self):
# 面板
panel = wx.Panel(self)
# 滑块
slider = wx.Slider(panel, id=wx.ID_ANY,
minValue=1, maxValue=100,
pos=(20, 20))
# 数值步进
spin_ctrl = wx.SpinCtrl(panel, id=wx.ID_ANY,
min=1, max=100, initial=1,
pos=(20, 60))
self.Bind(wx.EVT_SLIDER, self.slider, slider)
self.Bind(wx.EVT_SPINCTRL, self.spin_ctrl, spin_ctrl)
self.SetSize(900, 500)
self.SetTitle("滑块和步进的应用")
self.Centre()
self.Show(True)
def slider(self, e):
slider = e.GetEventObject()
value = slider.GetValue()
print(value)
def spin_ctrl(self, e):
spin = e.GetEventObject()
value = spin.GetValue()
print(value)
def main():
app = wx.App(False)
SliderAndSpin(None)
app.MainLoop()
if __name__ == "__main__":
main()
运行程序之后,弹出的窗口如下:
滑块wx.Slider的minValue指定最小值,maxValue指定最大值;wx.SpinCtrl的min指定最小值, max指定最大值, initial初始值,如果步进跨步比较大,如从1到100,可以直接输入整数100,组件做了约束,输入框里只能输入1~100之间的整数,不能输入其他内容。
好了,步进和滑块的内容就说到这了,关注我,下一节更精彩。
码字不易,你的关注和转发是对我最大的鼓励,谢谢!
一个当了10年技术总监的老家伙,分享多年的编程经验。想学编程的朋友,关注我,你就赚到了。我正在分享Python、前端、Java和App方面的干货了。赶紧来围观啊!!!