1、設置不可編輯
1 setReadOnly(false); 2 //或
3 setEnabled(false); 4 //或
5 setFocusPolicy(Qt::NoFocus);//無法獲得焦點,自然無法輸入,其他文本控件類似 6 //或
7 hasAcceptableInput(false);
2.setPlaceholderText()設置提示文字
如圖,搜索輸入框,沒有輸入任何字符時,顯示“搜索”,對用戶輸入作相關提示。
3、密文輸入
setEchoMode(QLineEdit::Password);
4、輸入格式控制
setInputMask("0000-00-00 00:00");
5、設置可以輸入的最多字符數
LineEdit->setMaxLength(9);//最多輸入9個字符
6、設置文本對齊方式
1 lineedit->setAlignment(Qt::AlignLeft)//左對齊
2 lineedit->setAlignment(Qt::AlignRight)//右對齊
3 lineedit->setAlignment(Qt::AlignCenter)//居中對齊
7、設置輸入規范
這個是通過設置 QValidator來進行控制, QValidator有很多派生類,如QIntValidator和QDoubleValidator等,以這兩個為例介紹:
QIntValidator :
1 QIntValidator r( 0, 100, this );//第一、第二個參數為范圍,第三個參數為父對象,指定父對象Qt會自動回收空間
2 QLineEdit* edit = new QLineEdit( this ); 3
4 // 這個行編輯只接受從0到100的整數
5 edit->setValidator( &r );
QDoubleValidator:
1 //前兩個參數與QIntValidator一樣,第三個參數為精度,小數點后幾位,第四個參數為父對象
2 QDoubleValidator *my = new QDoubleValidator(-250.0,290.0,2,this); 3 QLineEdit* edit = new QLineEdit( this ); 4 edit->setValidator( &my );
使用正則:
1 QRegExp regx("[1-9][0-9]+$"); 2 QValidator *validator = new QRegExpValidator(regx, ui->lineEdit ); 3 lineEdit->setValidator(validator); 4 lineEdit的第一個數是1-9的,第二個數和之后的是0-9的