中高端网站开发,大量增加告权重网站友链回提升网站权重吗,网站手绘教程,云南网页设计与制作目录
完善登录框
点击登录按钮后#xff0c;判断账号#xff08;admin#xff09;和密码#xff08;123456#xff09;是否一致#xff0c;如果匹配失败#xff0c;则弹出错误对话框#xff0c;文本内容“账号密码不匹配#xff0c;是否重新登录”#xff0c;给定两…目录
完善登录框
点击登录按钮后判断账号admin和密码123456是否一致如果匹配失败则弹出错误对话框文本内容“账号密码不匹配是否重新登录”给定两个按钮ok和cancel点击ok后会清除密码框中的内容继续进行登录如果点击cancel按钮则关闭界面。
如果账号和密码匹配则弹出信息对话框给出提示信息为“登录成功”,给出一个按钮ok点击ok后关闭整个登录界面跳转到其他界面
点击取消按钮后弹出问题对话框询问是否确定要退出登录给出两个按钮yes|no,点击yes则直接关闭整个登录界面如果点击no则进行进行登录
要求消息对话框对象版和静态成员函数版至少各实现一个
头文件
widget.h:
login.h:
源文件
widget.cpp:
login.cpp:
main.cpp:
效果图
思维导图 完善登录框
点击登录按钮后判断账号admin和密码123456是否一致如果匹配失败则弹出错误对话框文本内容“账号密码不匹配是否重新登录”给定两个按钮ok和cancel点击ok后会清除密码框中的内容继续进行登录如果点击cancel按钮则关闭界面。
如果账号和密码匹配则弹出信息对话框给出提示信息为“登录成功”,给出一个按钮ok点击ok后关闭整个登录界面跳转到其他界面
点击取消按钮后弹出问题对话框询问是否确定要退出登录给出两个按钮yes|no,点击yes则直接关闭整个登录界面如果点击no则进行进行登录
要求消息对话框对象版和静态成员函数版至少各实现一个
头文件
widget.h:
#ifndef WIDGET_H
#define WIDGET_H#include login.h
#include QWidget
#include QLabel
#include QLineEdit
#include QPushButton
#include QObject
#include QMessageBoxQT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent nullptr);~Widget();signals:void jumpToLogin();public slots:void loginBtn_slot();void cancelBtn_slot();private:Ui::Widget *ui;QLabel *lab1;QLineEdit *edit1;QLineEdit *edit2;QLabel *lab2;QLabel *lab3;QPushButton *btn1;QPushButton *btn2;login *l1;
};
#endif // WIDGET_Hlogin.h:
#ifndef LOGIN_H
#define LOGIN_H#include QWidgetnamespace Ui {
class login;
}class login : public QWidget
{Q_OBJECT
public slots:void jumpToLogin_slot();public:explicit login(QWidget *parent nullptr);~login();private:Ui::login *ui;
};#endif // LOGIN_H源文件
widget.cpp:
#include widget.h
#include ui_widget.hWidget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui-setupUi(this);l1 new login;//将图形化界面的名字改成Login screen登录界面this-setWindowTitle(Login screen);//将ui的图标改成想要的this-setWindowIcon(QIcon(:/icon/wodepeizhenshi.png));//设置ui界面的大小为合适的大小this-setFixedSize(QSize(400,300));//插入一个label它的宽度与ui等宽高度大约为整个ui界面高度的4/9lab1 new QLabel(this);lab1-resize(QSize(400,133));lab1-move(0,0);//label的内容要是一张图片lab1-setPixmap(QPixmap(:/icon/logo.png));//设置图片填充lab1-setScaledContents(true);//插入两个行编辑器第一个用于输入账号edit1 new QLineEdit(this);edit1-resize(QSize(240,40));edit1-move(110,150);edit1-setPlaceholderText(账号);//第二个用于输入密码edit2 new QLineEdit(this);edit2-resize(QSize(240,40));edit2-move(edit1-x(),edit1-y()55);edit2-setPlaceholderText(密码);//第二个回显模式是密码模式edit2-setEchoMode(QLineEdit::Password);//每个行编辑器前都要有一个label内容为图片lab2 new QLabel(this);lab2-resize(50,40);lab2-setPixmap(QPixmap(:/icon/userName.jpg));lab2-setScaledContents(true);lab2-move(edit1-x()-60,edit1-y());lab3 new QLabel(this);lab3-resize(50,40);lab3-setPixmap(QPixmap(:/icon/passwd.jpg));lab3-setScaledContents(true);lab3-move(edit2-x()-60,edit2-y());//要有两个pushbutton,一个是登录另一个是取消btn1 new QPushButton(登录,this);btn2 new QPushButton(取消,this);//重设他们的尺寸btn1-resize(QSize(60,30));btn2-resize(btn1-size());//移动他们的位置到合适btn1-move(120,edit2-y()55);btn2-move(btn1-x()120,edit2-y()55);//内容都会有一个图片btn1-setIcon(QIcon(:/icon/login.png));btn2-setIcon(QIcon(:/icon/cancel.png));//将登录按钮点击发信号与处理函数连接connect(btn1, QPushButton::clicked, this, Widget::loginBtn_slot);//将取消按钮点击发信号与处理函数连接connect(btn2, QPushButton::clicked, this, Widget::cancelBtn_slot);//将跳转信号与login界面的处理函数连接connect(this, Widget::jumpToLogin, l1, login::jumpToLogin_slot);
}Widget::~Widget()
{delete ui;
}void Widget::loginBtn_slot()
{if(edit1-text()QString(damin)edit2-text()QString(123456)){
// //使用静态成员函数的方式打开一个信息对话框
// QMessageBox::Information(this,
// 登录成功,
// 登录成功,
// QMessageBox::Ok,
// QMessageBox::Ok);//对象版实现打开一个信息对话框QMessageBox box(QMessageBox::Information,登录成功,登录成功,QMessageBox::Ok,this);//登录成功发送跳转信号box.exec();//信息对话框只提示登录成功只有一个按钮所以不需要判断emit this-jumpToLogin();this-close();}else{//对象版实现打开一个错误对话框QMessageBox box(QMessageBox::Critical,错误,账号密码不匹配是否重新登录,QMessageBox::Ok|QMessageBox::Cancel,this);//设置默认选择的按钮box.setDefaultButton(QMessageBox::Ok);int ret box.exec();//有两个按钮需要判断if(QMessageBox::Okret){edit2-clear();}else{this-close();}}
}void Widget::cancelBtn_slot()
{//使用静态成员函数的方式打开一个对话框int ret QMessageBox::question(this,请问,是否确认要退出,QMessageBox::Yes|QMessageBox::No,QMessageBox::No);switch (ret) {case QMessageBox::Yes://确认就退出this-close();break;case QMessageBox::No://否就不进行任何操作break;default://应该不会有这种可能性break;}
}
login.cpp:
#include login.h
#include ui_login.hlogin::login(QWidget *parent) :QWidget(parent),ui(new Ui::login)
{ui-setupUi(this);
}login::~login()
{delete ui;
}void login::jumpToLogin_slot()
{this-show(); //展示自己的界面
}main.cpp:
#include widget.h#include QApplicationint main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;w.show();return a.exec();
}效果图 思维导图
文章转载自: http://www.morning.fdrch.cn.gov.cn.fdrch.cn http://www.morning.addai.cn.gov.cn.addai.cn http://www.morning.zqbrd.cn.gov.cn.zqbrd.cn http://www.morning.sypzg.cn.gov.cn.sypzg.cn http://www.morning.wrtxk.cn.gov.cn.wrtxk.cn http://www.morning.bpmnq.cn.gov.cn.bpmnq.cn http://www.morning.bmpjp.cn.gov.cn.bmpjp.cn http://www.morning.bkslb.cn.gov.cn.bkslb.cn http://www.morning.snnkt.cn.gov.cn.snnkt.cn http://www.morning.pdkht.cn.gov.cn.pdkht.cn http://www.morning.zhishizf.cn.gov.cn.zhishizf.cn http://www.morning.bmncq.cn.gov.cn.bmncq.cn http://www.morning.xfjwm.cn.gov.cn.xfjwm.cn http://www.morning.rsdm.cn.gov.cn.rsdm.cn http://www.morning.paoers.com.gov.cn.paoers.com http://www.morning.gstg.cn.gov.cn.gstg.cn http://www.morning.fhtbk.cn.gov.cn.fhtbk.cn http://www.morning.mmkrd.cn.gov.cn.mmkrd.cn http://www.morning.hxcuvg.cn.gov.cn.hxcuvg.cn http://www.morning.ldsgm.cn.gov.cn.ldsgm.cn http://www.morning.jbkcs.cn.gov.cn.jbkcs.cn http://www.morning.hdqqr.cn.gov.cn.hdqqr.cn http://www.morning.bmfqg.cn.gov.cn.bmfqg.cn http://www.morning.znpyw.cn.gov.cn.znpyw.cn http://www.morning.qbgff.cn.gov.cn.qbgff.cn http://www.morning.zkqjz.cn.gov.cn.zkqjz.cn http://www.morning.ngznq.cn.gov.cn.ngznq.cn http://www.morning.pzqnj.cn.gov.cn.pzqnj.cn http://www.morning.ngmjn.cn.gov.cn.ngmjn.cn http://www.morning.rlbc.cn.gov.cn.rlbc.cn http://www.morning.bzsqr.cn.gov.cn.bzsqr.cn http://www.morning.tktyh.cn.gov.cn.tktyh.cn http://www.morning.nzlqt.cn.gov.cn.nzlqt.cn http://www.morning.cfocyfa.cn.gov.cn.cfocyfa.cn http://www.morning.jwgnn.cn.gov.cn.jwgnn.cn http://www.morning.qjmnl.cn.gov.cn.qjmnl.cn http://www.morning.mjtft.cn.gov.cn.mjtft.cn http://www.morning.mhmdx.cn.gov.cn.mhmdx.cn http://www.morning.wjhdn.cn.gov.cn.wjhdn.cn http://www.morning.wtlyr.cn.gov.cn.wtlyr.cn http://www.morning.ydtdn.cn.gov.cn.ydtdn.cn http://www.morning.zztmk.cn.gov.cn.zztmk.cn http://www.morning.lfcfn.cn.gov.cn.lfcfn.cn http://www.morning.qbdsx.cn.gov.cn.qbdsx.cn http://www.morning.zwsgl.cn.gov.cn.zwsgl.cn http://www.morning.yzsdp.cn.gov.cn.yzsdp.cn http://www.morning.lkcqz.cn.gov.cn.lkcqz.cn http://www.morning.gthc.cn.gov.cn.gthc.cn http://www.morning.mxnrl.cn.gov.cn.mxnrl.cn http://www.morning.vtbtje.cn.gov.cn.vtbtje.cn http://www.morning.jytrb.cn.gov.cn.jytrb.cn http://www.morning.qgmwt.cn.gov.cn.qgmwt.cn http://www.morning.wpspf.cn.gov.cn.wpspf.cn http://www.morning.mnbgx.cn.gov.cn.mnbgx.cn http://www.morning.pbpcj.cn.gov.cn.pbpcj.cn http://www.morning.skkmz.cn.gov.cn.skkmz.cn http://www.morning.wkrkb.cn.gov.cn.wkrkb.cn http://www.morning.yhdqq.cn.gov.cn.yhdqq.cn http://www.morning.ljcf.cn.gov.cn.ljcf.cn http://www.morning.mltsc.cn.gov.cn.mltsc.cn http://www.morning.nywrm.cn.gov.cn.nywrm.cn http://www.morning.gnkdp.cn.gov.cn.gnkdp.cn http://www.morning.ygmw.cn.gov.cn.ygmw.cn http://www.morning.ydfr.cn.gov.cn.ydfr.cn http://www.morning.rfrxt.cn.gov.cn.rfrxt.cn http://www.morning.cyyhy.cn.gov.cn.cyyhy.cn http://www.morning.trzzm.cn.gov.cn.trzzm.cn http://www.morning.pqqzd.cn.gov.cn.pqqzd.cn http://www.morning.wnkqt.cn.gov.cn.wnkqt.cn http://www.morning.qzqfq.cn.gov.cn.qzqfq.cn http://www.morning.dnmgr.cn.gov.cn.dnmgr.cn http://www.morning.zhishizf.cn.gov.cn.zhishizf.cn http://www.morning.zmqb.cn.gov.cn.zmqb.cn http://www.morning.nlwrg.cn.gov.cn.nlwrg.cn http://www.morning.sjsfw.cn.gov.cn.sjsfw.cn http://www.morning.tgyzk.cn.gov.cn.tgyzk.cn http://www.morning.dpqwq.cn.gov.cn.dpqwq.cn http://www.morning.tslfz.cn.gov.cn.tslfz.cn http://www.morning.zmlbq.cn.gov.cn.zmlbq.cn http://www.morning.prmbb.cn.gov.cn.prmbb.cn