网站做互动,开平网站建设,建筑模拟3中文版下载,盐城建设厅网站设计备案作业要求#xff1a; 代码运行效果图#xff1a;
登录失败 和 最小化 和 取消登录 登录成功 和 X号退出 代码#xff1a;
①#xff1a;头文件
#ifndef LOGIN_H
#define LOGIN_H#include QMainWindow
#include QLineEdit //行编辑器类
#include…作业要求 代码运行效果图
登录失败 和 最小化 和 取消登录 登录成功 和 X号退出 代码
①头文件
#ifndef LOGIN_H
#define LOGIN_H#include QMainWindow
#include QLineEdit //行编辑器类
#include QPushButton //按钮类
#include QLabel //标签类
#include QMovie //动图类
#include QDebugQT_BEGIN_NAMESPACE
namespace Ui { class Login; }
QT_END_NAMESPACEclass Login : public QMainWindow
{Q_OBJECTpublic:Login(QWidget *parent nullptr);~Login();//定义信号函数
signals:void my_signal();//定义槽函数
public slots:void cancel(); //关闭窗口void login(); //登录确认void minimize(); //窗口最小化private:Ui::Login *ui;QLineEdit *edit1;QLineEdit *edit2;QMovie *mv1;QLabel *lab1;QMovie *mv2;QLabel *lab2;QMovie *mv3;QLabel *lab3;QLabel *lab4;QPushButton *btn1;QPushButton *btn2;QPushButton *btn3;
};
#endif // LOGIN_H②源文件
#include login.h
#include ui_login.hLogin::Login(QWidget *parent): QMainWindow(parent), ui(new Ui::Login)
{ui-setupUi(this);//关于窗口的设置this-resize(640,640); //重新设置窗口大小this-setFixedSize(640,640); //固定窗口大小this-setWindowFlag(Qt::FramelessWindowHint); //将窗口标题去除this-setStyleSheet(background-color:rgb(179,183,170)); //设置窗口背景颜色//关于行编辑器的设置edit1 new QLineEdit(this); //实例化一个行编辑器对象用于输入登录账号edit1-resize(320,80); //重新设置行编辑器的大小edit1-move(160,260); //将行编辑器移动至合适的位置edit1-setStyleSheet(background-color:white); //设置行编辑器背景颜色edit1-setPlaceholderText(账号); //使用占位提示要在该行编辑器内输入的内容edit2 new QLineEdit(this); //实例化一个行编辑器对象用于输入登录密码edit2-resize(320,80); //重新设置行编辑器的大小edit2-move(160,360); //将行编辑器移动至合适的位置edit2-setPlaceholderText(密码); //使用占位提示要在该行编辑器内输入的内容edit2-setStyleSheet(background-color:white); //设置行编辑器背景颜色edit2-setEchoMode(QLineEdit::Password); //将行编辑器的输出模式设置为密码模式//关于动图和标签的设置//实例化一个动图对象用于接收动图mv1 new QMovie(:/pictrue/xxxh.gif);//将动图放入lab1中lab1 new QLabel(this); //实例化一个标签用于存放动图lab1-resize(640,260); //重新设置标签的大小lab1-setMovie(mv1); //存放动图mv1-start(); //让动图动起来lab1-setScaledContents(true); //自动适应label//实例化一个动图对象用于接收动图mv2 new QMovie(:/pictrue/xh5.gif);lab2 new QLabel(this); //实例化一个标签用于存放动图lab2-resize(80,80); //重新设置标签的大小lab2-move(80,260); //将标签移动至合适的位置lab2-setMovie(mv2); //存放动图mv2-start(); //让动图动起来lab2-setScaledContents(true); //自动适应label//实例化一个动图对象用于接收动图mv3 new QMovie(:/pictrue/xh3.gif);lab3 new QLabel(this); //实例化一个标签用于存放动图lab3-resize(80,80); //重新设置标签的大小lab3-move(80,360); //将标签移动至合适的位置lab3-setMovie(mv3); //存放动图mv3-start(); //让动图动起来lab3-setScaledContents(true); //自动适应labellab4 new QLabel(罗小黑之家欢迎您的到来 づ3づ╭❤,this); //实例化一个标签用于填充文字lab4-resize(320,40); //重新设置标签大小lab4-move(160,460); //将标签移动至合适的位置//关于按钮的设置btn1 new QPushButton(登录,this); //实例化一个按钮对象用于登录btn1-resize(150,60); //重新设置按钮的大小btn1-setStyleSheet(background-color:rgb(138,183,113);border-radius:10px); //设置按钮背景颜色及设置圆角btn1-move(160,500); //移动按钮至合适位置btn2 new QPushButton(x,this); //实例化一个按钮对象,用于关闭窗口btn2-resize(30,30); //重新设置按钮的大小btn2-setStyleSheet(background-color:white); //设置按钮背景颜色btn2-move(610,0); //移动按钮至合适位置btn3 new QPushButton(-,this); //实例化一个按钮对象,用于最小化窗口btn3-resize(30,30); //重新设置按钮的大小btn3-setStyleSheet(background-color:white); //设置按钮背景颜色btn3-move(580,0); //移动按钮至合适位置//关于在UI界面使用的按钮的设置ui-btn4-resize(150,60); //重新设置按钮的大小ui-btn4-setStyleSheet(background-color:rgb(138,183,113);border-radius:10px); //设置按钮背景颜色及设置圆角ui-btn4-move(330,500); //将按钮移动至合适的位置//手动连接信号和自定义的槽函数 基于qt4版的连接connect(ui-btn4,SIGNAL(clicked()),this,SLOT(cancel())); //将btn4发送的点击信号用槽处理使窗口关闭connect(btn2,SIGNAL(clicked()),this,SLOT(cancel())); //将btn2发送的点击信号用槽处理使窗口关闭//手动连接信号和自定义的槽函数 基于qt5版的连接connect(btn1,QPushButton::clicked,this,Login::login);connect(btn3,QPushButton::clicked,this,Login::minimize);}Login::~Login()
{delete ui;
}//对取消按钮和关闭按钮的槽函数处理
void Login::cancel()
{this-close(); //关闭窗口
}//对登录按钮的槽函数处理
void Login::login()
{//判断账号和密码是否正确if(edit1-text() admin edit2-text() 123456){//账号和密码正确则登录成功并关闭窗口qDebug() 登录成功;this-close();}else{//账号和密码不正确则登录失败qDebug() 登陆失败;}
}//对最小化窗口按钮的槽函数处理
void Login::minimize()
{this-showMinimized(); //将窗口最小化
}
③主函数文件
#include login.h#include QApplicationint main(int argc, char *argv[])
{QApplication a(argc, argv);Login w;w.show();return a.exec();
}思维导图