一、简介
二、信号函数
三、常用类成员函数
一、简介
QLineEdit类提供单行文本编辑框。
二、信号函数
新建项目文件,打开ui图形界面,拖入lineedit控件,选中lineedit对象,右键选择“转到槽”,可以看到lineedit有6个信号函数。
表格参考:https://blog.csdn.net/liang19890820/article/details/52044639
1 | void cursorPositionChanged(int old, int new) | 光标位置改变,发射信号。 前面的位置old,新的位置是new。 |
2 | void editingFinished( ) | 当编辑完成点回车,发射信号。 |
3 | void returnPressed( ) |
光标在行编辑框内点回车,发射信号。 |
4 | void selectionChanged( ) | 选择的文本发生变化时,发射信号。 |
5 | void textChanged(const QString & text) |
文本内容改变时,发射信号。 |
6 | void textEdited(const QString & text) | 当文本被编辑时,发射该信号。 当使用setText()改变文本时,textEdited()信号也会发射。 |
下面分别使用后五个信号。在ui界面拖入10个lineedit,分两列(对象名按顺序设置成line11~line15,line21~line25)。界面设计如下所示:
其中第一列为信号栏,为别转到槽函数(函数分别与左侧对应);第二列为触发信号栏,若信号栏信号被触发,则会显示被触发的信息。
槽函数代码如下:
//编辑完成或点回车,触发信号
void MainWindow::on_line11_editingFinished()
{
ui->line12->setText("左边的被触发了");
}
//光标在编辑框内点回车,触发信号
void MainWindow::on_line21_returnPressed()
{
ui->line22->setText("左边的被触发了");
}
//选择文本内容发生了改变,触发信号
void MainWindow::on_line31_selectionChanged()
{
ui->line32->setText("左边的被触发了");
}
//编辑框文本内容了改变,触发信号
void MainWindow::on_line41_textChanged(const QString &arg1)
{
ui->line42->setText("左边的被触发了");
}
//编辑文本时,触发信号
void MainWindow::on_line51_textEdited(const QString &arg1)
{
ui->line52->setText("左边的被触发了");
}
点击运行,结果如下,当触发条件满足时,第二栏就会有显示。
问题:textChang()与textEdited()、returnPressed()与editingFinish()可实现一些相同功能。
三、常用类成员函数
表格参考:https://blog.csdn.net/qq_37233607/article/details/78154788
https://blog.csdn.net/liang19890820/article/details/52044639
1 | void setPlaceholderText(QString) |
设置占位符 |
2 | void setText(QString) | 设置编辑框内的文本 |
3 | void setReadOnly(bool) | 把设置编辑框为只读模式,无法进行编辑. |
4 | void setEnabled(bool) | 设置是否激活行编辑框,作用和3类似 |
5 | bool isModified() | 判断文本是否被修改 |
6 | void selectAll() | 选中框内所有文本 |
7 | QString displayText() | 返回显示的文本 |
8 | QString selectedText() | 返回被选中的文本 |
9 | QString text() const | 返回输入框的当前文本。 |
10 | void setMaxLength(int) | 设置文本的最大允许长度 |