QT基础知识2

思维导图

2>将day1做的登录界面升级优化【资源文件的添加】

在登录界面的登录取消按钮进行一下设置:

使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数

将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为"admin",密码是否为"123456",如果账号密码匹配成功,则输出“登录成功”,并关闭该界面,如果匹配失败,则输出登录失败,并将密码框中的内容清空

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ed1(new QLineEdit(this))
    , ed2(new QLineEdit(this))
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    //设置窗口
    this->setWindowTitle("宝宝乐园");//设置窗口的标题
    this->setWindowIcon(QIcon("C:\\Users\\lenovo\\Desktop\\图片\\pictrue\\qq.png"));//设置窗口的图标
    this->resize(540,410);//重新设置窗口的大小
    this->setWindowFlag(Qt::FramelessWindowHint);//设置纯净窗口(即去掉窗口头部)
    this->setStyleSheet("background-color:white");//设置背景颜色
    //设置标签显示动图
    QLabel *l1 = new QLabel(this);//设置一个QLabel类的指针指向在堆区申请的QLabel大小的空间
    l1->resize(540,200);//重新设置标签的大小

    QMovie *mv = new QMovie("C:\\Users\\lenovo\\Desktop\\图片\\pictrue\\WIFI baby.gif");//实例化一个动图指针
    l1->setMovie(mv);//将动图设置到标签中去
    mv->start();//让动图动起来
    l1->setScaledContents(true);//让图片自适应标签的大小

    QLabel *l2 = new QLabel(this);//设置一个QLabel类的指针指向在堆区申请的QLabel大小的空间
    l2->resize(25,25);//重新设置标签的大小
    l2->move(125,250);//移动标签的位置
    l2->setPixmap(QPixmap("C:\\Users\\lenovo\\Desktop\\图片\\pictrue\\wodepeizhenshi.png"));//在标签中设置图片
    l2->setScaledContents(true);//让图片自动适应标签的大小

    QLabel *l3 = new QLabel(this);//设置一个QLabel类的指针指向在堆区申请的QLabel大小的空间
    l3->resize(25,25);//重新设置标签的大小
    l3->move(125,290);//移动标签的位置
    l3->setPixmap(QPixmap("C:\\Users\\lenovo\\Desktop\\图片\\pictrue\\passwd.jpg"));//在标签中设置图片
    l3->setScaledContents(true);//让图片自动适应标签的大小

    QLabel *l4 = new QLabel(this);//设置一个QLabel类的指针指向在堆区申请的QLabel大小的空间
    l4->move(190,210);//移动标签的位置
    l4->resize(280,30);//重新设置标签的大小
    l4->setText("欢迎来到宝宝乐园");//设置标签文本
    //设置行编辑器
    //QLineEdit *ed1 = new QLineEdit(this);//设置一个QLineEdit类的指针指向在堆区申请的QLineEdit大小的空间
    ed1->resize(280,30);//重新设置行编辑器的大小
    ed1->setPlaceholderText("QQ号码/手机/邮箱");//设置占位
    ed1->move(150,250);//移动行编辑器的位置

    //QLineEdit *ed2 = new QLineEdit(this);//设置一个QLineEdit类的指针指向在堆区申请的QLineEdit大小的空间
    ed2->resize(280,30);//重新设置行编辑器的大小
    ed2->setPlaceholderText("密码");//设置占位
    ed2->setEchoMode(QLineEdit::Password);//设置行编辑器显示模式
    ed2->move(150,290);//移动行编辑器的位置
    //设置按钮
    QPushButton *btn1 = new QPushButton("登录",this);//设置一个QPushButton类的指针指向在堆区申请的QPushButton大小的空间
    btn1->resize(70,30);//重新设置按钮的大小
    btn1->move(190,330);//移动按钮的位置
    btn1->setStyleSheet("background-color:skyblue;color:black");//设置按钮的背景颜色,字体颜色以及边框修剪

    QPushButton *btn2 = new QPushButton("取消",this);//设置一个QPushButton类的指针指向在堆区申请的QPushButton大小的空间
    btn2->resize(70,30);//重新设置按钮的大小
    btn2->move(300,330);//移动按钮的位置
    btn2->setStyleSheet("background-color:skyblue;color:black");//设置按钮的背景颜色,字体颜色以及边框修剪

    //手动连接系统的信号和自定义的槽函数,基于qt4版本,实现点击取消按钮,执行关闭窗口
    connect(btn2,SIGNAL(clicked()),this,SLOT(btn2_slot()));

    //手动连接系统的信号和自定义的槽函数,基于qt5版本
    connect(btn1,&QPushButton::clicked,this,&Widget::btn1_slot);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::btn1_slot()
{

    if(ed1->text() == "admin" && ed2->text() == "123456")
    {
        qDebug() << "登录成功";
        this->close();
    }
    else
    {
        qDebug() << "登录失败";
        ed2->clear();
    }
}
void Widget::btn2_slot()//槽函数的实现
{
    this->close();//执行关闭窗口的函数
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值