首页 > 解决方案 > 是否有一个 PYQT5 小部件,我可以在其中获得没有或更多字符限制的整数或浮点输入?

问题描述

在此处输入图像描述

我想在我用 pyqt5 编码的应用程序中获取用户的输入。我想得到的输入必须是整数或浮点数。所以用户不应该能够输入任何其他内容。

• 如果输入是一个整数,它必须有最多25 个字符的限制。

• 如果输入是浮点数,点的左边必须有最多25 个字符的限制,点的右边必须有最多10 个字符的限制。

我试过但没有奏效的方法:

  1. 我添加了“双旋转框”,然后将最大值设置为 9999999999999999999999999.9999999999。然后,当我输入 9999999999999999999999999.9999999999 作为输入并单击空白处时,我输入的输入变为另一个数字。

  2. 我添加了“行编辑”并将其更改为“仅整数模式”,代码如下:

from PyQt5.QtGui import QIntValidator
self.ui.lineEdit.setValidator(QIntValidator()) 

通过我得到的行编辑,我只能得到整数输入。我无法获得浮点输入。

  1. 我添加了“行编辑”并将设置更改为 1000 个字符的限制,并且只接受以下代码的整数输入:
rx = QtCore.QRegExp("[0-9]{1000}") 
val = QtGui.QRegExpValidator(rx)  
self.ui.LineEdit.setValidator(val) 

通过我得到的行编辑,我只能得到整数输入。我无法获得浮点输入。

  1. 我添加了 spinbox,但我无法将 spinbox 的最大字符限制更改为 25。而且我无法使用 spinbox 获得浮点输入。

标签: pythoninputpyqtpyqt5integer

解决方案


推荐阅读