QTLineedit单⾏⽂本编辑框
⼀、简介
QLineEdit类提供单⾏⽂本编辑框。
⼆、信号函数
新建项⽬⽂件,打开ui图形界⾯,拖⼊lineedit控件,选中lineedit对象,右键选择“转到槽”,可以看到lineedit有6个信号函数。
1void cursorPositionChanged(int old, int new) 光标位置改变,发射信号。
前⾯的位置old,新的位置是new。
2void editingFinished( )当编辑完成点回车,发射信号。
3void returnPressed( )光标在⾏编辑框内点回车,发射信号。4void selectionChanged( ) 选择的⽂本发⽣变化时,发射信号。
5void textChanged(const QString & text)⽂本内容改变时,发射信号。
6void textEdited(const QString & text)当⽂本被编辑时,发射该信号。
当使⽤setText()改变⽂本时,textEdited()信号也会发射。
下⾯分别使⽤后五个信号。在ui界⾯拖⼊10个lineedit,分两列(对象名按顺序设置成line11~line15,line21~line25)。界⾯设计如下所⽰:
其中第⼀列为信号栏,为别转到槽函数(函数分别与左侧对应);第⼆列为触发信号栏,若信号栏信号被触发,则会显⽰被触发的信息。
槽函数代码如下:
1//编辑完成或点回车,触发信号
2void MainWindow::on_line11_editingFinished()
3{
4    ui->line12->setText("左边的被触发了");
5}
6//光标在编辑框内点回车,触发信号
7void MainWindow::on_line21_returnPressed()
8{
9    ui->line22->setText("左边的被触发了");
10}
11//选择⽂本内容发⽣了改变,触发信号
12void MainWindow::on_line31_selectionChanged()
13{
14    ui->line32->setText("左边的被触发了");
15}
16//编辑框⽂本内容了改变,触发信号
html内容文本框17void MainWindow::on_line41_textChanged(const QString &arg1)
18{
19    ui->line42->setText("左边的被触发了");
20}
21//编辑⽂本时,触发信号
22void MainWindow::on_line51_textEdited(const QString &arg1)
23{
24    ui->line52->setText("左边的被触发了");
25}
点击运⾏,结果如下,当触发条件满⾜时,第⼆栏就会有显⽰。
问题:textChang()与textEdited()、returnPressed()与editingFinish()可实现⼀些相同功能。
三、常⽤类成员函数
1void setPlaceholderText(QString)设置占位符
2void setText(QString)设置编辑框内的⽂本
3void setReadOnly(bool)把设置编辑框为只读模式,⽆法进⾏编辑.
4void setEnabled(bool)设置是否激活⾏编辑框,作⽤和3类似
5bool isModified()判断⽂本是否被修改
6void selectAll()选中框内所有⽂本
7QString displayText()返回显⽰的⽂本
8QString selectedText()返回被选中的⽂本
9QString text() const 返回输⼊框的当前⽂本。10void setMaxLength(int)设置⽂本的最⼤允许长度

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。