QLineEdit 控件内容不是很多,如设置为密码显示模式、设置边距、设置匹配列表等等。没有什么特别特殊的功能,我们将所有代码先写进来,然后一点一点的说具体都起到了什么作用。

【代码如下】

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include "cwidget.h"
#include <QLineEdit>
#include <QDebug>
#include <QCompleter>
#include <QStringList>

CWidget::CWidget(QWidget *parent) : QWidget(parent)
{
// 一个最简单的 lineEdit
QLineEdit* lineEdit = new QLineEdit(this);

// 获取文本
QString lineEditText = lineEdit->text();
qDebug() << lineEditText;

// 设置显示模式,常用于登录框
lineEdit->setEchoMode(QLineEdit::Password); // 密码
//lineEdit->setEchoMode(QLineEdit::NoEcho); // 什么都不显示
//lineEdit->setEchoMode(QLineEdit::Normal); // 正常模式

// 设置内边距
lineEdit->setTextMargins(30, 10, 30, 10);

// 设置输入提示
QStringList strList;
strList.append("abc");
strList.append("bcd");
strList.append("china");
strList.append("cde");

// 将列表应用于匹配规则
QCompleter* completer = new QCompleter(strList);
// 设置匹配模式为包含匹配,就是当我们输入一个字符时
// 无论这个字符是否在首位置都显示匹配的字符串
completer->setFilterMode(Qt::MatchContains);
lineEdit->setCompleter(completer);
}

【获取 QLineEdit 文本】

1
2
3
// 获取文本
QString lineEditText = lineEdit->text();
qDebug() << lineEditText;

这里通过 qDebug 调试打印了出来,可以通过 Qt 下方看到提示信息。

【设置显示模式】

1
2
3
4
// 设置显示模式,常用于登录框
lineEdit->setEchoMode(QLineEdit::Password); // 密码
//lineEdit->setEchoMode(QLineEdit::NoEcho); // 什么都不显示
//lineEdit->setEchoMode(QLineEdit::Normal); // 正常模式

一般最常用的就是 Password 模式了,他可以让 QLineEdit 变为一个密码框输入控件。 2015-06-17_165706

【设置框内内边距】

1
2
// 设置内边距
lineEdit->setTextMargins(30, 10, 30, 10);

2015-06-17_165757

【设置输入提示】

1
2
3
4
5
6
7
8
9
10
11
12
13
// 设置输入提示
QStringList strList;
strList.append("abc");
strList.append("bcd");
strList.append("china");
strList.append("cde");

// 将列表应用于匹配规则
QCompleter* completer = new QCompleter(strList);
// 设置匹配模式为包含匹配,就是当我们输入一个字符时
// 无论这个字符是否在首位置都显示匹配的字符串
completer->setFilterMode(Qt::MatchContains);
lineEdit->setCompleter(completer);

2015-06-17_165938