QT代码练习

实现页面跳转功能

登入页

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{

    //实例化一个播报员
//    speecher = new QTextToSpeech(this);

    //设置界面信息
    this->setFixedSize(430,330);
    this->setWindowTitle("Irenaの小屋");
    this->setWindowIcon(QIcon(":/icon/kirin1.png"));
    this->setStyleSheet("background-color:white;");
    this->setWindowOpacity(0.95);
    //LOGO部分
    lab1->setPixmap(QPixmap(":/icon\\music_bg1.png"));
    //登入部分
    //1.账户(uesr)——图标部分
    lab2->move(100,180);
    lab2->setPixmap(QPixmap(":/icon/king.png"));
    //账户(uesr)——输入框部分
    edit1->resize(130,28);
    edit1->move(135,180);
    edit1->setPlaceholderText("聊天号/手机/邮箱");

    //2.密码(pwd)——图标部分
    lab3->move(105,230);
    lab3->setPixmap(QPixmap(":/icon/position.png"));
    //密码(pwd)——输入框部分部分
    edit2->resize(130,28);
    edit2->move(135,230);
    edit2->setEchoMode(QLineEdit::Password);
    edit2->setPlaceholderText("密码...");

    chb1->resize(130,28);
    chb1->move(135,255);

    chb2->resize(130,28);
    chb2->move(230,255);

    //3.登入选项(登入)
    btn1->move(190,280);
    btn1->resize(50,30);
    btn1->setIcon(QIcon(":/icon/denglu_1.png"));
    //退出选项(退出)
    btn2->move(250,280);
    btn2->resize(50,30);
    btn2->setIcon(QIcon(":/icon/quxiao.png"));

    btn3->move(310,280);
    btn3->resize(50,30);
    btn3->setIcon(QIcon(":/icon/sensho.png"));

    //退出——基于qt4的链接
//    connect(btn2,SIGNAL(clicked()),this,SLOT(close()));
    connect(btn2,SIGNAL(clicked()),this,SLOT(my_quit()));

    //退出——基于qt5的链接
    connect(btn1,&QPushButton::clicked,this,&Widget::my_slot);

    connect(btn3,&QPushButton::clicked,this,&Widget::my_jump);

    //手动将组件发射信号链接到功能函数中
//    connect(btn2,&QPushButton::clicked,[&](){
//        this->close();
//    });
}
//自定义槽函数的实现
void Widget::my_slot()
{
    //qt5链接
//    this->close();
    QString userName = edit1->text();
    QString pwdNum = edit2->text();
    if(userName=="admin"&&pwdNum=="123456")
    {
        qDebug()<<"登入成功";
        this->close();
    }
    else
    {
        qDebug()<<"登入失败";
        edit2->clear();
    }

    //语音播报
    //    speecher->say(btn2->text());
}

void Widget::my_quit()
{
    //qt4链接
    this->close();
}

void Widget::my_jump()
{
    emit jump();

    this->close();
}

void Widget::back_slot()
{
    this->show();
}

跳转页

Second::Second(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Second)
{
    ui->setupUi(this);
    this->setFixedSize(430,330);
    this->setWindowTitle("Irenaの小屋");
    this->setWindowIcon(QIcon(":/icon/kirin1.png"));
    this->setStyleSheet("background-color:white;");
    this->setWindowOpacity(0.95);

    //LOGO部分
    labs1->setPixmap(QPixmap(":/icon\\music_bg1.png"));

    labs2->setPixmap(QPixmap(":/icon\\SGlogo.png"));
    labs2->resize(430,100);
    labs2->move(115,230);


    btns1->move(130,180);
    btns1->resize(50,30);
    btns1->setIcon(QIcon(":/icon/sensho.png"));

    btns2->move(250,180);
    btns2->resize(50,30);
    btns2->setIcon(QIcon(":/icon/rinmin.png"));

    connect(btns1,&QPushButton::clicked,this,&Second::my_back);

    connect(btns2,&QPushButton::clicked,this,&Second::my_quit);
}


//跳转函数对应槽函数的定义
void Second::jump_slot()
{
    this->show();
}

void Second::my_back()
{
    emit back();

    this->close();
}

void Second::my_quit()
{
    this->close();
}

实现效果

 

 默认代码注释

 

 

 

 思维导图

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值