• 7709阅读
  • 9回复

[已解决]如何判断lineEdit接受的是不是数字? [复制链接]

上一主题 下一主题
离线yzpdsg
 

只看楼主 倒序阅读 楼主  发表于: 2010-05-23
如题。在线敬候佳音。
[ 此帖被yzpdsg在2010-05-24 18:12重新编辑 ]
离线dbzhang800

只看该作者 1楼 发表于: 2010-05-23
不妨详细叙述你的要求
离线yzpdsg

只看该作者 2楼 发表于: 2010-05-23
就是判断lineEdit接受的是不是数字,如果不是数字就提示错误。
离线dbzhang800

只看该作者 3楼 发表于: 2010-05-23
还是不太清楚,你想说的是 QValidator ?
离线yzpdsg

只看该作者 4楼 发表于: 2010-05-24
应该是这个吧,我不太清楚该用什么类来实现,抑或lineEdit可以检查输入的内容是否符合要求?
离线paranoid
只看该作者 5楼 发表于: 2010-05-24
两种方式:
1.setInputMask
2.setValidator
你的情况可以使用setValidator,参数类型为QIntValidator;
离线iiiyyyhhhsss

只看该作者 6楼 发表于: 2010-05-24
引用第5楼paranoid于2010-05-24 12:45发表的  :
两种方式:
1.setInputMask
2.setValidator
你的情况可以使用setValidator,参数类型为QIntValidator;



说到那个setInputMask,怎么光标会变得如此难看?有方法把光标外形调整回来吗?
离线paranoid
只看该作者 7楼 发表于: 2010-05-24
使用QValidator就没有光标的问题,而且可以控制任意格式,这就看正则表达式的功力了
离线yzpdsg

只看该作者 8楼 发表于: 2010-05-24
OK,明白了。多谢各位!
离线iiiyyyhhhsss

只看该作者 9楼 发表于: 2010-05-24
引用第7楼paranoid于2010-05-24 14:49发表的  :
使用QValidator就没有光标的问题,而且可以控制任意格式,这就看正则表达式的功力了



QValidator不能完全替代setInputMask吧,

例如做一个IP输入框,基本上就要用到setInputMask,因为,要使得lineEdit事先存在三个点...
快速回复
限100 字节
 
上一个 下一个