怎么限制QLineEdit输入字符串的长度

2025-03-16 02:05:48
推荐回答(1个)
回答1:

限制输入字符的长度
目标:在编辑框中输入的内容只能是0和1,而且输入内容的长度不能超过32位。
实现方法:限制输入字符的内容,可以达到过滤非法字符的作用。
1、首先新建一个MFC类:CLimitEdit,基类是CEdit。
2、添加响应WM_CHAR消息的事件OnChar。在其中输入的内容只能为0和1.代码如下:
if(!((nChar == 8) || ((nChar >= 48)&&(nChar <= 49))))
{
return;
}
3、为编辑框绑定CLimitEdit类型的控件变量:m_string。
若程序出现错误,看是否缺少头文件:#include “LimitEdit.h”
4、在CSheZhiDlg类的DoDataExchange中添加代码,控制用户输入的字符串不超过32各字符。
m_string.SetLimitText(32);
其他限制条件:如控制输入的内容只能为字母或数字。
//8为回格键(Back Space)
//65到90之间为大写字母
//97到122之间为小写字母
//48到57之间为数字
if(!((nChar == 8) || ((nChar >= 65)&&(nChar <= 90)) || ((nChar >= 97)&&(nChar <= 122)) || ((nChar >= 48)&&(nChar <= 57))))
{
return;
}