天天看点

Qt之行编辑器

行编辑器是一个单行的文本编辑器,允许用户输入和编辑单行的纯文本内容。

一、显示模式:

Normal:正常显示

NoEcho:不显示任何输入

PassWord:密码样式,以黑点代替显示

PasswordEchoOnEdit:编辑时正常,其余以密码样式显示

二、输入掩码

目的:限制输入的内容,可使用一些特殊字符设置输入的格式和内容

Qt之行编辑器

例如:将一个文本框属性inputMask设置为">AA-90-bb-! aa\#;*"

Qt之行编辑器

即按照上述掩码表中的格式进行输入才可以,否则按回车是不起作用的。

在一个label上右击转到槽,添加

void MyWidget::on_lineEdit2_returnPressed()      
{      
ui -> lineEdit3 -> setFocus();                         //输完后跳到lineEdit3      
qDebug()<<ui -> lineEdit2-> text();      
qDebug()<<ui -> lineEdit2 -> displayText();      
}      

三、输入验证

在cpp文件中添加

QValidator * validator = new QIntValidator(100,999,this);    //输入限制为100 ~ 999      
ui -> lineEdit3 -> setValidator(validator);      

四、自动补全

在类的构造函数中添加

QStringList wordlist;      
wordlist<<"Qt"<<"Qt Creator"<<QObject::tr("Hello!");//当输入首字母时,有补全提示      
QCompleter * completer = new QCompleter(wordlist,this);         //新建自动完成器材      
completer -> setCaseSensitivity(Qt::CaseSensitive);   //区分大小写   CaseInsensitive不区分大小写      
ui -> lineEdit4 -> setCompleter(completer);      
Qt之行编辑器