用户设置,要限制用户输入的大小,如果大于100则删除最后一个字符,问一下怎么写
这个控件不是可以设置max_length大小吗? 如果手动控制的话,链接text_changed信号,每当文本改变的时候判断一下大小,如果超出了就处理一下。
max_length
text_changed
不知道大于100删除最后一个字符是不是表述错误,还是奇怪的需求?按照字面意思,输入150个字符会变成149个,感觉很奇怪233。如果只想让用户输入最大长度的字符串,我想max_length属性应该足够。
dicarne 不大于100不是表述错误,这个数值是给透明度的,比如输入80,代码里就会把 80 / 100 的值传到ColorRect的透明度里(透明度最大是1),但是总有人会输100以上的数值,像我们班几个同学就把值改到999,虽然程序不会报错,但就…感觉就怪怪。
我要达到的效果是例如输入99时,如果再输入一个9时,因为999 < 100 ,所以删除最后一个字符,使文本变为99。
我要限制的不是字符大小,是数值大小,所以我想问一下怎么删除最后一个字符。
单纯的限制字符串大小就设置一下max_length就可以了
或者像楼上说的链接信号
原来是这样。 限制最大值代码 可以用substr函数裁减字符串。 也可以转成数字后,用max函数限制最大值。
substr
max
dicarne 好的,谢谢