我的qt为什么登录不上,qt安装不上怎么回事

首页 > 实用技巧 > 作者:YD1662023-08-01 19:22:50

导语

在前一篇的内容中已经实现了登录对话框,这里我们对其进行改进。在弹出对话框中填写用户名和密码,按下登录按钮,如果用户名和密码均正确则进入主窗口,如果有错则弹出警告对话框。

环境是:Windows 7 Qt 4.8.1 Qt Creator 2.4.1

目录

一、创建项目

二、登录设置

正文

一、创建项目

1.新建Qt Gui应用,项目名称为login,类名和基类保持MainWindow和QMainWindow不变。

2.完成项目创建后,向项目中添加新的Qt设计师界面类,模板选择Dialog without Buttons,类名更改为LoginDialog。完成后向界面上添加两个标签Label、两个行编辑器Line Edit和两个按钮Push Button,设计界面如下图所示。

我的qt为什么登录不上,qt安装不上怎么回事(1)

3.这里在属性编辑器中将用户名后面的行编辑器的object Name属性更改为usrLineEdit,密码后面的行编辑器为pwdLineEdit,登录按钮为loginBtn,退出按钮为exitBtn。如下图所示。

我的qt为什么登录不上,qt安装不上怎么回事(2)

4.下面我们使用另外一种信号和槽的关联方法来设置退出按钮。在设计模式下面的信号和槽编辑器中,先点击左上角的绿色加号添加关联,然后选择发送者为exitBtn,信号为clicked(),接收者为LoginDialog,槽为close()。如下图所示。这样,当单击退出按钮时,就会关闭登录对话框。

我的qt为什么登录不上,qt安装不上怎么回事(3)

5.右击登录按钮,在弹出的菜单中选择“转到槽…”,然后选择clicked()信号并确定。转到相应的槽以后,添加函数调用:

void LoginDialog::on_loginBtn_clicked() { accept(); }

6.下面到main.cpp文件,更改内容如下:

#include <QtGui/QApplication> #include "mainwindow.h" #include "logindialog.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; LoginDialog dlg; if (dlg.exec() == QDialog::Accepted) { w.show(); return a.exec(); } else return 0; }

7.这时运行程序,按下退出按钮会退出程序,按下登录按钮会关闭登录对话框,并显示主窗口。

二、登录设置

1.下面添加代码来实现使用用户名和密码登录,这里我们只是简单的将用户名和密码设置为了固定的字符串。到logindialog.cpp文件中将登录按钮的单击信号对应的槽的代码更改为:

void LoginDialog::on_loginBtn_clicked() { // 判断用户名和密码是否正确, // 如果错误则弹出警告对话框 if(ui->usrLineEdit->text() == tr("yafeilinux") && ui->pwdLineEdit->text() == tr("123456")) { accept(); } else { QMessageBox::warning(this, tr("Waring"), tr("user name or password error!"), QMessageBox::Yes); } }

Qt中的QMessageBox类提供了多种常用的对话框类型,比如这里的警告对话框,还有提示对话框,问题对话框等。这里使用了静态函数来设置了一个警告对话框,这种方式很方便。其中的参数依次是:this表明父窗口是登录对话框;然后是窗口标题;然后是显示的内容;最后一个参数是显示的按钮,这里使用了一个Yes按钮。大家注意还要添加该类的头文件包含,即:#include <QMessageBox>。

2.下面运行程序,如果输入用户名为yafeilinux,密码为123456,那么可以登录,如果输入其他的字符,则会弹出警告对话框,如下图所示。

我的qt为什么登录不上,qt安装不上怎么回事(4)

首页 12下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.