QT实现简单验证的页面跳转

原创 2016年08月28日 17:55:49

LINUX爱好者! 该文章的项目是基于LINUX下的QT。

转载请标明出处!

QT实现简单的页面跳转


以登录功能为例,本项目将默认类作为主界面(main_widgt),创建的新类(login_widget)作登录界面。


#ifndef LOGIN_WIDGET_H
#define LOGIN_WIDGET_H

#include <QObject>
#include <QWidget>
#include <QLabel>
#include <QLineEdit>
#include <QPushButton>
#include <QVBoxLayout>
#include <QMessageBox>

class login_widget : public QWidget
{
    Q_OBJECT

public:
    login_widget();

    QLabel *userLabel;
    QLabel *pswLabel;
    QLineEdit *luserEdit;
    QLineEdit *pswEdit;
    QPushButton *loginBtn;
    QVBoxLayout *layout;

    QWidget *mainwidget;

private slots:
    void on_lloginBtn_Clicked();
};

#endif // LOGIN_WIDGET_H


#include "login_widget.h"
#include "main_widget.h"

login_widget::login_widget()
{
    userLabel = new QLabel;
    userLabel->setText(tr("username"));
    luserEdit = new QLineEdit;
    pswLabel = new QLabel;
    pswLabel->setText(tr("password"));
    pswEdit = new QLineEdit;
    //pswEdit->setEchoMode(QLineEdit::Password);//输入密码时显示*
    loginBtn = new QPushButton(tr("Login"));
    connect(loginBtn,SIGNAL(clicked(bool)),this,SLOT(on_lloginBtn_Clicked()));
    ......
}

void login_widget::on_lloginBtn_Clicked()
{
    if((this->luserEdit->text().trimmed()==tr("a"))&&(this->pswEdit->text().trimmed()==tr("a")))
    {
        this->hide();//密码正确登陆成功跳到主页面
        mainwidget = new main_widget;
        mainwidget->show();
    }
    else if (this->luserEdit->text().trimmed()==NULL)
    {
        QMessageBox::warning(this,tr("ERROR"),tr("please input username!"),QMessageBox::Yes);
        this->luserEdit->setFocus();//鼠标回到用户名栏
    }
    else
    {
        QMessageBox::warning(this,tr("WARNING"),tr("username or password wrong!"),QMessageBox::Yes);
        this->pswEdit->clear();//清除密码
        this->pswEdit->setFocus();//鼠标回到密码栏
    }
}

void login_widget::on_lregisterBtn_Clicked()
{
    this->hide();
    registerwidget = new register_widget;
    registerwidget->show();
}


#ifndef MAIN_WIDGET_H
#define MAIN_WIDGET_H
#include <QWidget>

class main_widget : public QWidget
{
    Q_OBJECT

public:
    main_widget(QWidget *parent = 0);
    ~main_widget();

    QLabel *welcomeLabel;
    QVBoxLayout *layout;
};

#endif // MAIN_WIDGET_H


#include "main_widget.h"
#include "login_widget.h"

#include <QtSql>//数据库

main_widget::main_widget(QWidget *parent)
    : QWidget(parent)
{
    welcomeLabel = new QLabel;
    welcomeLabel->setText(tr("welcome to back!"));
    ......
}

main_widget::~main_widget()
{

}


#include "login_widget.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    login_widget w;//设置启动的默认窗口
    w.show();

    return a.exec();
}


成功!


如有疑问请提出一起探讨,谢谢!




(QT)QT跳转页面(信号-槽机制)

QT的界面跳转一般常用的也就是通过信号-槽机制去实现,那什么是信号-槽呢?按我自己的理解来说,就是好比如人(相当于信号)和游泳池(相当于槽)。当人觉得天气很热想去游泳了,就会去找游泳池游泳,换成专业点...
  • apple8422
  • apple8422
  • 2017年06月04日 21:20
  • 1686

QT实现界面跳转切换

简介
  • tj807126663
  • tj807126663
  • 2014年06月23日 16:15
  • 14929

移动开发 - Android - 实现两个页面(Activity)的简单跳转(Intent)

我们要实现的页面跳转如下图所示: 第一个页面: 通过点击第一个按钮,实现跳转: 通过点击第二个按钮实现跳转后,点击返回按钮(结束界面)因为之前的界面还没有结束,当第二个界面结束后,露出第一...
  • qq_34594236
  • qq_34594236
  • 2016年11月03日 08:07
  • 1400

简单的jsp登录页面跳转功能

文件共有四个web.xml、login.jsp、logout.jsp、welcome.jsp四个文件 测试环境:Tomcat 6.0.x 假设项目名称是LoginSample,我的目录结构...
  • Hydra_shuang
  • Hydra_shuang
  • 2016年10月17日 21:27
  • 2135

初学Qt——vs2012开发环境下的窗体跳转

最近接了份外快,要求使用vs+qt开发一个简单的数据管理系统。qt开发使用的语言是c++,然而c++只是大一第二学期有教过而已,基本也差不多忘光了,废话不多说,讲下今天遇到的问题吧 如标题所说,窗体...
  • qq_31117007
  • qq_31117007
  • 2016年04月10日 03:24
  • 1128

Swift 登录页面跳转,条件判断 ,页面跳转

原:http://www.woowen.com/swift/2014/10/04/swift%20条件判断页面跳转/ 在swift中作跳转是一件很简单得事情,可是如果右键某个空间拖动...
  • baixiaozhe
  • baixiaozhe
  • 2016年03月11日 11:12
  • 3052

跳转页面选择与逻辑

在定制的tableViewCell中,要显示cell中界面的数据,就必须在- (UITableViewCell *)tableView:(UITableView *)tableView cellFor...
  • baidu_30087715
  • baidu_30087715
  • 2016年08月31日 15:33
  • 438

Ajax验证登录后跳转到主页面

问题在“物业报修系统”的登录页面里,我用Ajax的POST方法给服务器提交用户邮箱和密码,服务器验证后给我返回一条JSON数据,里边有验证的结果。一般地,在登录验证成功后,网站会自动跳转到主页面,这应...
  • qiuych3
  • qiuych3
  • 2016年06月02日 14:04
  • 6704

Qt多窗口来回切换实战

学习Qt有一段时间了,今天算是空闲,总结一下之前过的多窗口切换的实现过程。因为自己在学这个的时候在网上查找过一些资料,感觉都没有完全把过程讲清楚,对于初学者来说是一种痛苦(老是缺这缺那得,估计都是大神...
  • Stephen_jie
  • Stephen_jie
  • 2016年10月25日 20:07
  • 9811

提交表单用ajax判断登录正确并跳转页面的方法

原文链接:http://www.jb51.net/article/60588.htm 这篇文章主要介绍了js判断登录与否并确定跳转页面的方法,涉及Ajax及session使用的技巧,非常具有实用价值,...
  • qq_26222859
  • qq_26222859
  • 2016年05月25日 20:52
  • 8614
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:QT实现简单验证的页面跳转
举报原因:
原因补充:

(最多只允许输入30个字)