QT day2

mainwindow.h

cpp 复制代码
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QDebug>

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
signals:
    void my_signal();
public slots:
    void my_slot();//自定义一个槽函数
    void loginbtn_slot();

private:
    Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H

mainwindow.cpp

cpp 复制代码
#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //窗口的相关设置
    this->setWindowTitle("QQ");
    this->setWindowIcon(QIcon(":/pictrue/qq.png"));

    //标签的相关设置
    ui->logolabel->setPixmap(QPixmap(":/pictrue/logo.png"));
    ui->logolabel->setScaledContents(true);

    //账号和密码
    ui->usernamelabel->resize(35,35);
    ui->usernamelabel->setPixmap(QPixmap(":/pictrue/userName.jpg"));
    ui->usernamelabel->setScaledContents(true);

    ui->passwordlabel->resize(35,35);
    ui->passwordlabel->setPixmap(QPixmap(":/pictrue/passwd.jpg"));
    ui->passwordlabel->setScaledContents(true);

    ui->usernamelineEdit->setPlaceholderText("QQ账号/手机号码/邮箱");
   // ui->usernamelineEdit->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred);
   // ui->usernamelineEdit->adjustSize();
    ui->passwordlineEdit->setEchoMode(QLineEdit::Password);

    //登录按钮和取消登录按钮
    ui->loginbtn->setIcon(QIcon(":/pictrue/login.png"));
    ui->cancelbtn->setIcon(QIcon(":/pictrue/cancel.png"));

    //手动连接信号和槽函数,基于qt4版本 是不友好的连接
    connect(ui->cancelbtn,SIGNAL(clicked()),this,SLOT(my_slot()));

    //qt5版本 判断账号是否为admin,密码是否为123456
    connect(ui->loginbtn,&QPushButton::clicked,this,&MainWindow::loginbtn_slot);


}

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

void MainWindow::my_slot()
{
    this->close();
}

void MainWindow::loginbtn_slot()
{
    if(ui->usernamelineEdit->text()=="admin" && ui->passwordlineEdit->text()=="123456")
    {
        qDebug() << "登录成功";
    }
    else
    {
        qDebug() << "登录失败";
        ui->usernamelineEdit->setText("");
        ui->passwordlineEdit->setText("");
        this->close();
    }

}
相关推荐
名誉寒冰1 小时前
# KVstorageBaseRaft-cpp 项目 RPC 模块源码学习
qt·学习·rpc
xiaoyaoyou.xyz2 小时前
嵌入式Linux Qt开发:1、搭建基于ubuntu18.04的Qt开发环境及测试(解决Qt creator输入法问题)
linux·qt
小龙Guo5 小时前
QT+opencv实现卡尺工具找圆、拟合圆
开发语言·qt·opencv
破晓的历程7 小时前
Qt之Qfile类
开发语言·qt
feiyangqingyun10 小时前
Qt/C++开发监控GB28181系统/录像文件查询/录像回放/倍速播放/录像文件下载
c++·qt·gb28181·录像回放·录像文件下载
忆源12 小时前
【Qt】之音视频编程2:QtAV的使用篇
开发语言·qt·音视频
enyp8013 小时前
Qt原型模式实现与应用
开发语言·qt·原型模式
忆源18 小时前
【Qt】之音视频编程1:QtAV的背景和安装篇
开发语言·qt·音视频
teacher伟大光荣且正确1 天前
Qt Creator 配置 Android 编译环境
android·开发语言·qt
六bring个六1 天前
qtcreater配置opencv
c++·qt·opencv·计算机视觉·图形渲染·opengl