Python Can';t在QSpinBox上设置全量程

Python Can';t在QSpinBox上设置全量程,python,pyqt4,Python,Pyqt4,我正在尝试创建一个接受所有数字的QSpinBox,但是我在最大值方面遇到了一些问题 sbox = QSpinBox(self) sbox.setRange(-sys.maxint/88-1, sys.maxint/86) sbox.setValue(int(setting.value)) 我只想使用sbox.setRange(-sys.maxint-1,sys.maxint),但是如果我将范围增加到超出整个微调器的范围,我就无法输入任何内容。有人知道为什么吗 它接受所有数字 我想你是指所

我正在尝试创建一个接受所有数字的QSpinBox,但是我在最大值方面遇到了一些问题

 sbox = QSpinBox(self)
 sbox.setRange(-sys.maxint/88-1, sys.maxint/86)
 sbox.setValue(int(setting.value))
我只想使用
sbox.setRange(-sys.maxint-1,sys.maxint)
,但是如果我将范围增加到超出整个微调器的范围,我就无法输入任何内容。有人知道为什么吗

它接受所有数字

我想你是指所有的整数而不是所有的数字

记住,尽管PyQt是用Python编写的,但是底层的Qt库是用C++编写的,所以它很可能局限于一定宽度的固定大小的整数(例如32位或64位)。如果您试图使用接近极限的数字,那么

QSpinBox
中的一些内部计算可能会溢出并缠绕,这可以解释您看到的异常行为

要允许任何整数,请使用,然后使用
int
函数将内容解析为Python整数。这将允许输入所有整数(您甚至可以在
sys.maxint
之上)。但你会失去旋转箭头