当前位置: 首页 > news >正文

深圳网站建设学习什么是seo技术

深圳网站建设学习,什么是seo技术,枣庄市网站建设,b2c网站建设平台1.优化登陆界面,当点击登录按钮后,在该按钮对应的槽函数中,判断账户和密码框内的数据是否为admin和123456,如果账户密码匹配成功,则提示登陆成功并关闭登录界面,如果账户密码匹配失败,则提示登录…

1.优化登陆界面,当点击登录按钮后,在该按钮对应的槽函数中,判断账户和密码框内的数据是否为admin和123456,如果账户密码匹配成功,则提示登陆成功并关闭登录界面,如果账户密码匹配失败,则提示登录失败,并将密码框中的内容清空。

当点击取消按钮后,则关闭整个登陆界面

要求:对登录按钮使用QT5版本的链接,对取消按钮,使用QT4版本的链接

完成登陆框的按钮操作,并在登陆成功后,进行页面跳转

widget.h

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QWidget>
#include <QPushButton>
#include <QDebug>
#include <QLineEdit>
#include <QLabel>
#include <QString>
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTsignals:void my_signal();  //自定义信号函数public slots:void my_slot();    //自定义的登录槽函数void on_btn1_clicked();void on_btn3_clicked();
signals:void jump();  //自定义跳转函数public:Widget(QWidget *parent = nullptr);~Widget();private:Ui::Widget *ui;QLabel *lab1;QLabel *lab2;QLineEdit *edit2;QPushButton *btn1;QPushButton *btn2;QPushButton *btn3;QLabel *lab3;QLineEdit *edit1;
};
#endif // WIDGET_H

second.h

#ifndef SECOND_H
#define SECOND_H#include <QWidget>namespace Ui {
class Second;
}class Second : public QWidget
{Q_OBJECTpublic:explicit Second(QWidget *parent = nullptr);~Second();
public slots:void jump_slot();   //定义有关处理跳转信号的槽函数private:Ui::Second *ui;
};#endif // SECOND_H

main.cpp

#include "widget.h"
#include "second.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;Second s;w.show();//链接信号与槽完成两个页面的跳转QObject::connect(&w,&Widget::jump,&s,&Second::jump_slot);return a.exec();
}

widget.cpp

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//更改窗口标题this->setWindowTitle("MyQQ");//更改窗口图标this->setWindowIcon(QIcon(":/new/prefix1/icon/qie.png"));//更改logo图,在当前路径下this->setFixedSize(700,800);//1.实例化一个标签,设置上面界面lab1 = new QLabel(this);//设置父组件lab1 -> resize(700,300);//设置大小lab1->setPixmap(QPixmap(":/new/prefix1/icon/wangzhe.jpg"));//设置内容为图片lab1->setScaledContents(true);//设置内容自适应//2.实例化一个标签,设置账号lab2 = new QLabel(this);//设置父组件lab2 -> move(150,400);//设置位置lab2->setPixmap(QPixmap(":/new/prefix1/icon/denglu.png"));//设置内容为图片//3.实例化一个标签,设置密码lab3 = new QLabel(this);//设置父组件lab3 -> move(150,lab2->y()+50);//设置位置lab3->setPixmap(QPixmap(":/new/prefix1/icon/mima.png"));//设置内容为图片//1.构造一个行编辑器,构造时给定父组件edit1 = new QLineEdit(this);edit1->setPlaceholderText("QQ/手机/邮箱");   //设置编辑器的占位文本edit1->resize(300,40);      //设置尺寸edit1->move(lab1->x()+250,400);//移动位置//edit1->setEnabled(false);   //设置不可用状态//2.构造一个行编辑器,构造时给定父组件以及文本内容edit2 = new QLineEdit("",this);edit2->setPlaceholderText("密码");   //设置编辑器的占位文本qDebug() << edit2->text();    //获取行文本编辑器中文本内容edit2->resize(edit1->size());edit2->move(lab1->x()+250,edit1->y()+50);edit2->setEchoMode(QLineEdit::Password);   //设置回显模式//1.构造一个按钮时,指定父组件,登录btn1 = new QPushButton(this);  //将当前界面设置成父组件btn1->setText("微信登录");btn1->resize(btn1->size());btn1->move(edit2->x(),edit2->x()+300);btn1->setIcon(QIcon(":/new/prefix1/icon/w.png"));//2.构造一个按钮时,指定父组件,登录btn2 = new QPushButton(this);  //将当前界面设置成父组件btn2->setText("qq登录");btn2->resize(btn1->size());btn2->move(btn1->x()+100,edit2->x()+300);btn2->setIcon(QIcon(":/new/prefix1/icon/qie.png"));//2.构造一个按钮时,指定父组件,取消登录btn3 = new QPushButton(this);  //将当前界面设置成父组件btn3->setText("取消登录");btn3->resize(btn1->size());btn3->move(btn1->x()+200,edit2->x()+300);btn3->setIcon(QIcon(":/new/prefix1/icon/cuowu.png"));//QT5链接微信登录到自定义的槽函数中connect(this->btn1,&QPushButton::clicked,this,&Widget::my_slot);//QT4链接取消到自定义的槽函数中connect(btn3,SIGNAL(pressed()),this,SLOT(close()));}Widget::~Widget()
{delete ui;
}
void Widget::my_slot()
{//获取文本内容QString username = edit1->text();QString pwd = edit2->text();if(username == "admin" && pwd == "123456"){qDebug()<< "登陆成功";emit jump();this->close();}else{qDebug()<< "登陆失败";edit2->clear();}
}
void Widget::on_btn1_clicked()
{}
void Widget::on_btn3_clicked()
{}

second.cpp

#include "second.h"
#include "ui_second.h"Second::Second(QWidget *parent) :QWidget(parent),ui(new Ui::Second)
{ui->setupUi(this);
}Second::~Second()
{delete ui;
}//处理跳转信号函数对应的槽函数
void Second::jump_slot()
{this->show();    //将当前界面进行展示
}

 

面试题:
一.多态,虚函数,纯虚函数

多态是类的三大属性之一,分为静态多态和动态多态,静态多态是函数重载,动态多态又称动态绑定,在运行时去确定对象的类型和正确选择需要调用的函数,一般用于解决基类指针或引用派生类对象调用类中的重写的函数时出现的问题。多态意为一种形式多种状态,是父类指针或者引用,指向或初始化子类的对象,调用子类对父类重写的函数,进而展开子类的功能。

虚函数是函数前加上virtual,虚函数满足继承,父类中该函数时虚函数,继承到子类中,依然是虚函数,如果子类再被继承,“孙类还是虚函数”。

当类中有虚函数或者继承了虚函数时,类中自动添加一个虚指针,虚指针指向一个虚函数列表,列表中寻访指向虚函数的指针,实际上是一个函数指针数组。虚指针是一个指向函数指针数组的指针。

纯虚函数是当父类中虚函数被子类用来重写,但没有真正意义的时候,把父类中的虚函数写成纯虚函数,有纯虚函数的类是一个抽象类,只能被继承,无法实例化一个具体的对象。每个抽象类中至少有一个纯虚函数。当子类继承了父类的两个纯虚函数但只重写了一个纯虚函数是,就还是一个抽象类,无法实例化一个对象。

二.引用作为函数参数有哪些特点:

1.引用必须在函数定义时声明,且不能为NULL,必须引用一块已经存在的内存空间。

2通过引用传参可以避免复制大量数据,提高程序的执行效率。

3.通过引用传递参数,可以在函数内部对实参进行修改,从而改变原始值,不用返回值。

4.引用参数可以让函数接收不同类型的参数。

5.引用和目标占用同一块空间,在作为参数传递时,不会开辟新的空间,没有值传递和地址传递的区别

http://www.15wanjia.com/news/45184.html

相关文章:

  • 二次开发软件搜索引擎优化的目的是对用户友好
  • 慈利网站建设seo关键词分析表
  • 深圳html5网站开发肇庆网站快速排名优化
  • 网站开发先前台和后台长沙百度首页排名
  • 花钱也可以哪些网站可以做推广广告小说推广关键词怎么弄
  • 最简单的企业简介北京网优化seo公司
  • 广告网站模板下载seo搜索优化排名
  • 好123上网主页免费seo推广排名软件
  • 长治做网站百度竞价培训
  • 模板做的网站如何下载地址aso关键字优化
  • 成都设计网站建设厦门零基础学seo
  • 杭州效果图制作福州seo外包公司
  • 英国帮人做设计作业网站找资源的关键词有哪些
  • 怎么注册自己的网站快速建站教程
  • 如何制作独立网站百度推广开户渠道
  • 去哪找网站建设公司外贸高端网站设计公司
  • 建站技术论坛在线域名ip查询
  • 新手搭建论坛己做网站韩国电视剧
  • 许昌做网站哪家好营销软文的范文
  • 网站根目录验证文件是什么网站都有哪些
  • 利用新冠消灭老年人优质的seo网站排名优化软件
  • 四川省建设注册中心网站seo搜索引擎优化介绍
  • 网站如何做跳转百度关键词竞价和收费的方法
  • 西安有什么好玩的地方景点推荐seo和sem
  • 湖南网站建设的公司排名免费网站 推广网站
  • asp 网站开发seo关键词推广方式
  • 东莞企业网站建设多少钱网站推广方案策划
  • 手机端网站首页怎么做拓客app下载
  • 网上快速学做网站四川百度推广排名查询
  • 彩票网站怎么做收银怎样才能在百度上面做广告宣传