qt4 - 具有 64 位整数的 PyQt4 spinbox

标签 qt4 pyqt4 biginteger

是否可以修改 PyQt spinbox 以处理大于 32 位的整数(-2147483648 - 2147483647)?我知道可以用 C++ 编写一个具有 64 位 int 数据类型的新旋转框,但这会变得复杂。

最佳答案

您可以使用 QDoubleSpinBox 获得值大于 32 位的旋转框.

顾名思义,这将为您提供最大为 2**53 (9,007,199,254,740,992) 的 double (即浮点)值。如果您想要整数值,只需使用 setDecimals(0) 将精度设置为零即可。 (注意:由于某种原因,Qt Designer 不允许您为任一内置旋转框设置大于 99,999,999 的最大值,因此您必须“手动”执行此操作。

如果您想要大于 2**53 的值,请子类 QAbstractSpinBox ,重新实现相关方法( stepBystepEnabledvalidate 以及可能的 fixup ),然后提供您认为必要的任何其他方法(例如 value/setValue)。

关于qt4 - 具有 64 位整数的 PyQt4 spinbox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26841036/

相关文章:

c++ - 在 QPlainTextEdit 中获取指向 QTextBlock 的指针

c++ - QT C++ 传递 Widgets 到函数

c++ - 如何隐藏 QSplitter 小部件中的句柄?

java - 为什么程序给出错误的输出?

c++ - QTreeView 不显示模型

python 2.X : Why Can't I Properly Handle Unicode?

Python Qt+OpenGL 绘图区域错误

memory - Zig Lang 中正确的 BigInt Fibonacci 实现

java - 使用编码为 16 进制的字符串创建 BigInt

python - PyQT 将一个窗口与另一个 PyQT 窗口连接/拖动... - 相同的程序