【QT】非常简单的登录界面实现

本系列是作者自学实践过程的记录

本文是关于登录界面设计

有问题欢迎讨论

效果图:

一、创建项目和主界面

  • 创建Qt Widget Application
  • 这里我们使用qmake而不是cmake
  • 这是主界面,登录界面等后面再创建,这里要勾选上generate form,为我们生成ui文件

创建好就可以到第二步

二、创建login界面

这里只需要右击当前项目文件,添加新文件

  • 这一步要选择Qt设计器界面类,因为这样会为我们生成.h、.cpp以及ui文件,非常方便



三、login界面设计

login界面很简单,只要加上两个文本条和两个按钮就可以。

效果如下图:

  • 部件命名如下所示:

接着就可以设计槽函数,用于登录界面:

四、槽函数实现页面跳转

页面的显示和隐藏,只需要简单使用window.show()window.hide()

用户名和密码的验证也只需要做QString的字符串验证,源代码如下:

cpp 复制代码
void login::on_pushButton_login_clicked()
{
    QString name = ui->lineEdit_username->text();
    QString password = ui->lineEdit_password->text();

    if (name.compare("admin") == 0 && password.compare("123456") == 0 )
    {
        mainwindow = new MainWindow();
        mainwindow->show();
        this->hide();
    }
    else

    if (name == "")
    {
        QMessageBox::information(this,"提示","请输入用户名!");
        ui->lineEdit_username->setFocus();
    }
    else
        if(password == ""){
            QMessageBox::information(this,"提示","请输入密码!");
            ui->lineEdit_password->setFocus();
        }
        else
        {
            QMessageBox::warning(this,"错误提示","用户名或密码错误");
            ui->lineEdit_username->clear();
            ui->lineEdit_password->clear();
            ui->lineEdit_username->setFocus();
        }
}


void login::on_pushButton_etix_clicked()
{
    close();
}

最后,在main.cpp 中,先让login的界面显示即可

至此,就完成一个简单的登录界面的实现了。

如有问题,欢迎评论联系!

相关推荐
苏宸啊9 分钟前
rbtree封装map和set
c++
ok_hahaha16 分钟前
java从头开始-黑马点评-Redission
java·开发语言
无巧不成书021817 分钟前
Java面向对象零基础实战:从Employee类吃透自定义类核心,掌握封装精髓
java·开发语言·java入门·面向对象·自定义类·employee类·java核心技术
跃上青空31 分钟前
Java如何优雅的使用fastjson2进行枚举序列化/反序列化,欢迎探讨
java·开发语言
汉克老师32 分钟前
GESP2025年6月认证C++三级( 第一部分选择题(1-8))
c++·二进制·原码·补码·gesp三级·gesp3级·八进制、
不想写代码的星星32 分钟前
C++ 折叠表达式:“我写递归你写折叠,咱俩代码差十年”
c++
Leo655351 小时前
动态透视报表 + 查询接口 + Excel导出
开发语言·windows·python
BioRunYiXue1 小时前
Nature Methods:CellVoyager 自主 AI 智能体开启生物数据分析新时代
大数据·开发语言·前端·javascript·人工智能·数据挖掘·数据分析
Titan20241 小时前
map和set的封装学习笔记
数据结构·c++
AIminminHu2 小时前
OpenGL渲染与几何内核那点事-项目实践理论补充(一-1-(5)番外篇:给 CAD 加上“控制台”——让用户能实时“调参数、看性能”)
qt·mfc·cad