qt设计登录界面用户名密码,密码隐藏代码
时间: 2024-10-14 12:14:16 浏览: 11
在Qt中创建一个登录界面,通常我们会使用QLineEdit控件来处理用户名和密码输入,并利用EchoMode属性来隐藏密码。下面是一个简单的示例代码:
```cpp
#include <QApplication>
#include <QWidget>
#include <QFormLayout>
#include <QLineEdit>
#include <QPushButton>
class LoginForm : public QWidget {
public:
LoginForm(QWidget *parent = nullptr) : QWidget(parent) {
// 设置窗口大小
setMinimumSize(300, 200);
// 创建布局
QFormLayout* layout = new QFormLayout(this);
layout->setSpacing(10); // 增加间距美观
// 创建用户名输入框,EchoMode设置为Normal显示用户名,Password显示为星号*
QLineEdit* usernameInput = new QLineEdit(this);
usernameInput->setPlaceholderText("请输入用户名");
usernameInput->echoMode(QLineEdit::Normal);
// 创建密码输入框,EchoMode设置为Password隐藏密码
QLineEdit* passwordInput = new QLineEdit(this);
passwordInput->setPlaceholderText("请输入密码");
passwordInput->setEchoMode(QLineEdit::Password);
// 创建登录按钮
QPushButton* loginButton = new QPushButton("登录", this);
connect(loginButton, &QPushButton::clicked, this, &LoginForm::onLoginClick);
// 添加到布局中
layout->addWidget(usernameInput);
layout->addWidget(passwordInput);
layout->addWidget(loginButton);
QVBoxLayout* bottomLayout = new QVBoxLayout;
bottomLayout->addLayout(layout);
setLayout(bottomLayout);
}
private slots:
void onLoginClick() { // 这里可以添加登录验证逻辑
qDebug() << "用户名: " << usernameInput->text();
qDebug() << "密码: (已隐藏)";
}
};
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
LoginForm loginForm;
loginForm.show();
return app.exec();
}
```
在这个例子中,当用户点击登录按钮时,`onLoginClick`槽函数会被调用,你可以在这里编写实际的登录验证逻辑。
阅读全文