在wxPython Phoenix中最大值大于2147483647的滑块?

时间:2016-07-15 20:53:25

标签: python slider wxpython limit

基本上,来自wxPython Phoenix的wx.Slider小部件不能超过2147483647

确实,

slider = wx.Slider( parent   = parent,
                    value    = 10,
                    minValue = 0,
                    maxValue = 2147483647 )
print slider.GetMax()

输出:

  

2147483647

然而,

slider = wx.Slider( parent   = parent,
                    value    = 10,
                    minValue = 0,
                    maxValue = 2147483648 )
print slider.GetMax()

输出:

  

(program.py:5403):Gtk-CRITICAL **:IA__gtk_range_set_range:断言   ' min<马克斯'失败
  0

我需要在该小部件中使用更大的值。任何解决方法?

2 个答案:

答案 0 :(得分:1)

您是否考虑过将值除以适当的除数。

编辑:
有时你只需要务实。您不可能显示或使用长度为20亿的滑块。无论是否自动生成,使滑块使用介于0%和100%之间的值更简单,您可以随时操作tooltip以显示值,如果这是必要的,但即使这样,给定的精度也是如此在我看来,使用如此庞大的数字时的位置是如此不准确以至于毫无意义。

答案 1 :(得分:0)

我认为它是32位机器?
2147483647(或2 ^ 31-1(因为我们从0开始计算))是32位机器可以处理的最大整数