• 12676阅读
  • 5回复

【提问】QLineEdit怎样限定输入数字的范围? [复制链接]

上一主题 下一主题
离线kytexzy
 

只看楼主 倒序阅读 楼主  发表于: 2005-12-24
我按照 Assistant上的例子:
validatorLineEdit->setValidator(new QDoubleValidator(-999.0, 999.0, 2, validatorLineEdit));

我的想法是让输入的数值只能在 -999.0 到 999.0 之间,可是我在输入条上输入22222222时也没有受到限制,请问各位有什么办法?
[ 此贴被XChinux在2005-12-24 11:01重新编辑 ]
try to find forgiveness for yourself and forgive others
离线kytexzy

只看该作者 1楼 发表于: 2005-12-24
好像需要联接QLineEdit的textEdited(const QString &text)信号,正在构思中!
try to find forgiveness for yourself and forgive others
离线dara

只看该作者 2楼 发表于: 2005-12-24
setInputMask("999")
离线XChinux

只看该作者 3楼 发表于: 2005-12-26
Qt的例子中也是和楼主描述的一样的。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线kytexzy

只看该作者 4楼 发表于: 2006-01-08
把textEdited(const QString &text)信号连接到一个槽,然后判断输入的数字大小,超出范围则警告。
我就是这么做的!
try to find forgiveness for yourself and forgive others
离线ccmaster
只看该作者 5楼 发表于: 2006-02-04
我做过的,时间长有点忘。使用规则表达式。QRegExp传入模式字符串,如-999.0到999.0之间,表达式为[-]{1,1}[1-9][0-9][0-9].{1,1}[0-9],这是较笨的写法。然后setRegExp(regExp),lineedit->setValidator。
在编程中浮点数比较是不好的。
快速回复
限100 字节
 
上一个 下一个