【QT】Day1

1. 收到实现登录框

        要求:

                1、登录窗口更改标题、图标

                2、设置固定尺寸、并给定一定的透明度

widget.h

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QDebug>       //信息调试类,用于打印输出的
#include <QIcon>        //图标头文件
#include <QPushButton>  //按钮类头文件
#include <QLineEdit>    //行编辑器类
#include <QLabel>

class Widget : public QWidget
{
    Q_OBJECT
public:
    QLabel *lab1,*lab2,*lab3;
    QLineEdit *edit1,*edit2;
    QPushButton *btn1,*btn2;

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();
};
#endif // WIDGET_H

widget.cpp

#include "widget.h"

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

    this->setFixedSize(600,500);    //设置固定尺寸
    this->setWindowTitle("鹏哥快聊"); //窗口标题
    this->setWindowIcon(QIcon("C:\\Users\\DELL\\Desktop\\wodepeizhenshi.png"));   //设置窗口图标
    this->setWindowOpacity(1);     //设置透明度
/***********************************以上是关于界面的配置*****************************************/

    //1、使用无参构造,构造出一个标签,指定父组件--logo
//    QLabel *lab1 = new QLabel(this);
    lab1 = new QLabel(this);
    lab1->resize(600,200);
    lab1->move(0,10);
    lab1->setPixmap(QPixmap("C:\\Users\\DELL\\Desktop\\logo.png"));     //logo
    lab1->setScaledContents(true);  //设置内容自适应

    //2、使用无参构造,构造出一个标签,构造时给定文本内容、父组件--登录账号标签
    lab2 =new QLabel("账号",this);
    lab2->resize(30,30);
    lab2->move(120,250);
    lab2->setPixmap(QPixmap("C:\\Users\\DELL\\Desktop\\userName.jpg"));
    lab2->setScaledContents(true);  //设置内容自适应
    lab2->setAlignment(Qt::AlignCenter);    //垂直和水平全部居中


    //3、使用构造函数构造一个标签,构造时给定文本内容、父组件---登录密码标签
    lab3 = new QLabel("密码",this);
    lab3->resize(30,30);
    lab3->move(120,310);
    lab3->setStyleSheet("background-color:skyblue;");
    lab3->setPixmap(QPixmap("C:\\Users\\DELL\\Desktop\\passwd.jpg"));
    lab3->setScaledContents(true);  //设置内容自适应
/*****************************标签设置*************************************/


    //1、使用有参构造构造一个行编辑器,构造时给定初始文本、父组件
    edit1 = new QLineEdit("请输入登录账号",this);
    edit1->resize(290,40);  //重新设置尺寸
    edit1->move(160,240);   //移动

    //2、使用有参构造构造一个行编辑器,构造时给定父组件
    edit2 = new QLineEdit(this);
    edit2->resize(edit1->size());
    edit2->move(160,300);
    edit2->setEchoMode(QLineEdit::Password);    //设置密文模式
    edit2->setPlaceholderText("密码");       //设置占位符
/*******************************以上是关于行编辑器相关函数********************************/

    //1、使用有参构造,构造一个"登录"按钮,构造时,给定文本内容、父组件
//    QPushButton *btn1 = new QPushButton("登录",this);
    btn1 = new QPushButton("登录",this);
    btn1->resize(150,50);
    btn1->move(100,400);
    btn1-> setIcon(QIcon("C:\\Users\\DELL\\Desktop\\login.png"));//设置按钮图标

    //2、使用有参构造,构造一个"取消"按钮,构造时,给定图标、文本内容、父组件
    btn2 = new QPushButton(btn1->icon(),"取消",this);
    btn2->resize(150,50);
    btn2->move(300,400);
    btn2-> setIcon(QIcon("C:\\Users\\DELL\\Desktop\\cancel.png"));//设置按钮图标
/*************************以上是关于按钮的相关操作******************************/
}

Widget::~Widget()
{
}

运行结果如下:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值