2012-08-07 85 views
1

我有一个QLineEdit控件,并且想为它设置验证器。QValidator和键盘语言qt

QRegExp regExp("[A-Za-z0-9]+"); 
QRegExpValidator *regExpVal = new QRegExpValidator(); 
regExpVal->setRegExp (regExp); 
ui->lineEditName->setValidator (regExpVal); 

之后,我不能在lineEditName和lineEditAlias上用越南语键盘输入任何字母数字字符。 Qt总是清除我输入的字符。 我该如何解决这个问题?

回答

0

您正在尝试将那些不允许按照正则表达式输入到conrtrol中的字符。 按照您的国家/地区脚本删除正则表达式或重置。

为越南人设置QValidator :: setLocale,然后设置正则表达式以包含越南语。