Qt(10.8)

作业:完善登录界面

源文件

cpp 复制代码
#include "widget.h"
#include "ui_widget.h"
#include<QDebug>
#include<QLabel>
#include<QMessageBox>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
   ui->setupUi(this);
   this->setWindowTitle("登录界面");
   this->setWindowIcon(QIcon("D:\\wjl\\C++\\Qt\\day01\\01d\\pictrue\\qq")); //设置窗口图标
   ui->btn1->setIcon(QIcon("D:\\wjl\\C++\\Qt\\day01\\01d\\pictrue\\login"));//设置图标
   ui->btn1->setEnabled(true);//设置自适应

   ui->btn2->setIcon(QIcon("D:\\wjl\\C++\\Qt\\day01\\01d\\pictrue\\cancel"));//设置图标
   ui->btn2->setEnabled(true);//设置自适应

    ui->lineEdit_2->setPlaceholderText("QQ号/手机号/邮箱");
    ui->lineEdit->setPlaceholderText("输入密码");
    ui->lineEdit->setEchoMode(QLineEdit::Password);        //设置回显模式

    ui->label->setPixmap(QPixmap("D:\\wjl\\C++\\Qt\\day01\\01d\\pictrue\\logo"));
    ui->label->setScaledContents(true);

    ui->label_3->setPixmap(QPixmap("D:\\wjl\\C++\\Qt\\day01\\01d\\pictrue\\userName"));
    ui->label_3->setScaledContents(true);

    ui->label_2->setPixmap(QPixmap("D:\\wjl\\C++\\Qt\\day01\\01d\\pictrue\\passwd"));
    ui->label_2->setScaledContents(true);


}

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

void Widget::on_btn1_clicked()
{
    if(ui->lineEdit->text()==ui->lineEdit_2->text())
    {
        QMessageBox box(QMessageBox::Information,              //图标,信息图标
                           "信息",                             //对话框标题
                           "登录成功",                        //对话框文本内容
                           QMessageBox::Ok,   //对话框提供的按钮
                           this);                              //父组件
           //3、显示对话框:并返回用户点击的那个按钮值
           int btn = box.exec();
           //4、判断用户点击的按钮值
           if(btn == QMessageBox::Ok)
           {
               box.close();
           }
    this->close();
    emit jump();
        qDebug()<<"登录成功";
    }
    else
    {
            //调用静态成员函数来完成对话框
            int btn = QMessageBox::warning(this,
                                 "警告",                       //对话框标题
                                 "账号和密码不匹配,是否重新登录",              //对话框文本
                                 QMessageBox::Yes|QMessageBox::No, //提供的按钮
                                 QMessageBox::Yes);              //默认按钮

            //2、对用户点击的按钮进行判断
            if(btn == QMessageBox::Yes)
            {
                ui->lineEdit->clear();
            }
            else if(btn==QMessageBox::No)
            {
                this->close();
            }

    }
}

void Widget::on_btn2_clicked()
{
    QMessageBox box(QMessageBox::Question,              //图标,问题图标
                       "问题",                             //对话框标题
                       "是否退出登录?",                        //对话框文本内容
                       QMessageBox::Yes|QMessageBox::No,   //对话框提供的按钮
                       this);
       //3、显示对话框:并返回用户点击的那个按钮值
       int btn = box.exec();
       if(btn == QMessageBox::Yes)
       {
          this->close();
       }else if(btn == QMessageBox::No)
       {
          box.close();
       }
}
相关推荐
欣栀♡几秒前
Spring 循环依赖不止三级缓存,Boot 2.6 起这个开关默认已经关了
java·spring·缓存
SL_staff1 分钟前
3分钟上线新规则:业务人员拖拽完成合同超期自动暂停服务
java·mysql·全栈
Android小码家11 分钟前
Vehicle 实战 自定义属性+测试demo
java·c++·framework·vhal·vehicle
范同学~11 分钟前
固定表头+第一列+最后一列
java·服务器·前端
Littlehero_12120 分钟前
QT自定义控件之水泥厂组态(源码开源)
开发语言·qt
随风爱学习29 分钟前
JAVA学习之异常
java
m0_6399069431 分钟前
HashMap:哈希扰动、扩容源码、红黑树转换、并发问题
java·算法·哈希算法
Roll圈圈38 分钟前
长链接太丑影响转化率?这个短链工具让你的推广链接更专业
java
神魔皆以血嗜44 分钟前
Java 存储金额
java·后端
SL_staff2 小时前
周报越厚问题越拖?用结构化执行机制让周报回归决策价值
java·spring cloud·开源