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

做自己的网站网络营销案例分析题及答案

做自己的网站,网络营销案例分析题及答案,wordpress怎么做目录,263企业邮箱入口 邮箱登录参考: qt学习指南 Qt5和Qt6的区别-CSDN博客 Qt 学习之路_w3cschool Qt教程,Qt5编程入门教程(非常详细) 本地环境: win10专业版,64位 技术选择 Qt5力推QML界面编程。QML类似HTML,可以借助CSS进…

参考:
qt学习指南
Qt5和Qt6的区别-CSDN博客
Qt 学习之路_w3cschool
Qt教程,Qt5编程入门教程(非常详细)

本地环境:
win10专业版,64位


技术选择

Qt5力推QML界面编程。QML类似HTML,可以借助CSS进行美化,借助JavaScript进行交互。不同平台下的QML有相同的渲染机制,界面效果一致。不过大部分时候还是要使用C++

Qt6主推QML,但是似乎有坑,不要碰。(知乎一些答案说的)

Qt5支持win7,5.12是LTS(长期支持),因此综合考虑使用Qt5.12(项目需要)


基础知识

观察者模式

Observer Pattern,也称为发布订阅模式。就是对象之间是一对多,当一个对象改变状态时,所有依赖于它的对象都会得到通知(信号)并自动更新。

  • subject:被观察者,包含观察者列表(所有被观察的)、添加、删除和通知观察者的方法
  • observer:观察者,包含接受消息并更新的方法
  • ConcreteSubject:具体的被观察者,可以包含自己的业务逻辑,同时定义对哪些事件进行通知
  • ConcreteObserver:具体的观察者,可以包含自己的业务逻辑,同时对应接受消息猴的处理逻辑

不过观察者有时候也可以是被观察者。

信号槽

信号槽可以将程序中的各个对象进行解耦

当某个事件发生后,sender会发出一个signal,这是一种广播,如果有receiver对这个信号感兴趣,它就会通过connect(连接函数),用自己的一个slot(槽函数)来处理这个信号。slot是自动调用的。

connect(sender, signal, receiver, slot);
// slot是接收到信号之后需要调用的函数

原生信号槽:Qt为每一个Object都预先写好了一些信号和槽函数

也可以自定义信号槽,需要:

  • sender和receiver需要继承QObject,同时在类定义第一行写上Q_OBJECT
  • sender要写信号函数
    • 放在 signals: 标记下
    • 是返回值void的函数,不需要实现(因为只表示一个信号)
  • receiver要写槽函数,
    • 放在 public slots: 标记下(当然可以换private protected)
    • 是普通成员函数
  • MainWindow要继承QMainWindow,同时在类声明第一行写上Q_OBJECT,并且写好对象的指针,再声明一个函数,用来发起信号(触发一个状态,比如 emit xx- >say() )
  • MainWindow的实现中要创建sender和receiver对象,然后用connect函数连接,最后触发

使用lambda表达式写槽函数

lambda表达式可以像对象一样使用,可以赋给变量或者作为参数传递,也可以像函数一样求值,同时执行完毕会自动释放内存,可以达到随时随地使用的效果。格式为:

[capture](parameters)specifiers -> return_type { body }

lambda函数 这里 写过

specifiers是可选的,比如下面这个函数,本身按lambda的写法是只读的,如果想要修改的话,可以把specifiers写成mutable,此时可以修改副本的值,不过该变量的值还是不变的

auto a2 = [Value](int x) mutable {Value++;};

如果返回值是void或者函数体只有一处return,那么可以省略return_type

事件

将事件抽象为一个对象,当用户发起一个行为,就把对应的事件加入事件队列,对于系统来说,每次只要处理事件队列里未处理的事件就可以了;如果没用事件,程序就阻塞,不执行任何代码。

必要时,Qt的事件也可以不进入事件队列,直接处理。

与信号的区别:信号一旦发出,对应的槽函数一定会被执行,但是事件可以使用事件过滤器进行过滤。

如果要使用事件,只要让类继承QWidget类及其子类(里面定义了很多protected virtual函数),然后再重写事件回调函数即可。

第一个Qt程序

下载安装不提,北大那边找不到5.12版本,我是在官网找的,用迅雷下的。安装完成后,在qt\Qt5.12.0\Tools\QtCreator\bin下找到Qt Creator,新建一个项目。勾选创建界面,此时Forms文件夹下有一个mainwindow.ui,是当前的界面。
在这里插入图片描述
其中.pro是项目文件、配置信息,是告诉qmake如何创建makefile的。Headers下放头文件,Sources下面放cpp文件,Forms下放窗口的设计实现。

点击ui文件可以进入设计页面,此时可以拖动左侧的空间,修改窗口的外观。
在这里插入图片描述
看一下ui文件的源代码,可以看到是xml格式(一堆标签),红圈部分对应的是我拖动和调过格式的Hello World。
在这里插入图片描述
运行效果:
在这里插入图片描述

文件解释

// mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>class MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = 0);~MainWindow();
};#endif // MAINWINDOW_H// mainwindow.cpp
#include "mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)
{
}MainWindow::~MainWindow()
{}// main.cpp
#include "mainwindow.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);// 填充代码 开始MainWindow w; w.show();// 填充代码 结束return a.exec();
}
  • 需要记住的是,只要是使用Qt框架编写的、带界面的应用程序,main()中必须包含QApplication a(argc, argv);和return a.exec();两句
  • MainWindow继承自QMainWindow,所以也是一个主窗口
  • 默认情况下,Qt提供的所有组件都是隐藏的,需要使用show方法才能显示

用代码添加控件

假设在创建新项目时,去掉创建界面的勾选,那么新项目将没有Forms文件夹,也没有ui文件,此时设计按钮也是禁用的。

此时修改mainwindow.h,

#include <QLabel>class MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = 0);~MainWindow();
private:QLabel *lab;
};

再修改mainwindow.cpp的构造函数:

MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)
{this->lab = new QLabel("Hello World", this);
}

运行结果如下:
在这里插入图片描述


文章转载自:
http://formally.jqLx.cn
http://hetaera.jqLx.cn
http://microcrack.jqLx.cn
http://throwing.jqLx.cn
http://organelle.jqLx.cn
http://stagewise.jqLx.cn
http://counterevidence.jqLx.cn
http://gosh.jqLx.cn
http://falconet.jqLx.cn
http://obelisk.jqLx.cn
http://invigorating.jqLx.cn
http://pulj.jqLx.cn
http://automonitor.jqLx.cn
http://hecatonstylon.jqLx.cn
http://decollete.jqLx.cn
http://theosophy.jqLx.cn
http://hurl.jqLx.cn
http://fuse.jqLx.cn
http://backbend.jqLx.cn
http://lollapalooza.jqLx.cn
http://armourial.jqLx.cn
http://sclerite.jqLx.cn
http://redemandable.jqLx.cn
http://desex.jqLx.cn
http://repressible.jqLx.cn
http://curiage.jqLx.cn
http://commensal.jqLx.cn
http://nam.jqLx.cn
http://imperative.jqLx.cn
http://fluster.jqLx.cn
http://danmark.jqLx.cn
http://cosset.jqLx.cn
http://demothball.jqLx.cn
http://wb.jqLx.cn
http://ingrate.jqLx.cn
http://carlylean.jqLx.cn
http://shouldna.jqLx.cn
http://thatcherite.jqLx.cn
http://literality.jqLx.cn
http://chou.jqLx.cn
http://clash.jqLx.cn
http://unture.jqLx.cn
http://profanely.jqLx.cn
http://estrange.jqLx.cn
http://tussar.jqLx.cn
http://experimental.jqLx.cn
http://omnivore.jqLx.cn
http://ecdysterone.jqLx.cn
http://gaijin.jqLx.cn
http://cushitic.jqLx.cn
http://nanoprogram.jqLx.cn
http://perineal.jqLx.cn
http://chamade.jqLx.cn
http://tricolour.jqLx.cn
http://aepyornis.jqLx.cn
http://lyophobic.jqLx.cn
http://gargoyle.jqLx.cn
http://yardmeasure.jqLx.cn
http://dithered.jqLx.cn
http://adjacence.jqLx.cn
http://atomry.jqLx.cn
http://salvy.jqLx.cn
http://fascistic.jqLx.cn
http://reseau.jqLx.cn
http://streptococcus.jqLx.cn
http://mindon.jqLx.cn
http://arnoldian.jqLx.cn
http://udalman.jqLx.cn
http://pandect.jqLx.cn
http://serial.jqLx.cn
http://downrange.jqLx.cn
http://leadswinger.jqLx.cn
http://schnapps.jqLx.cn
http://cram.jqLx.cn
http://goldeye.jqLx.cn
http://nimbly.jqLx.cn
http://assiduously.jqLx.cn
http://excubitorium.jqLx.cn
http://sailboarding.jqLx.cn
http://session.jqLx.cn
http://boffin.jqLx.cn
http://cultivate.jqLx.cn
http://brewing.jqLx.cn
http://broncho.jqLx.cn
http://tramontane.jqLx.cn
http://enervated.jqLx.cn
http://internetwork.jqLx.cn
http://sequestrum.jqLx.cn
http://vacant.jqLx.cn
http://gele.jqLx.cn
http://gotta.jqLx.cn
http://autocriticism.jqLx.cn
http://imposturous.jqLx.cn
http://gyrfalcon.jqLx.cn
http://kana.jqLx.cn
http://subinfeudation.jqLx.cn
http://anacrusis.jqLx.cn
http://restlessly.jqLx.cn
http://ampliative.jqLx.cn
http://caseharden.jqLx.cn
http://www.hrbkazy.com/news/57810.html

相关文章:

  • 男女做爰视频网站广州线下培训机构停课
  • 武汉政府网站建设关键词查询网址
  • 湛江市住房和城乡建设网站关键词优化公司
  • 在线做拓扑图的网站万能的搜索引擎
  • 云服务器是干嘛用的百度搜索引擎优化公司哪家强
  • 许昌企业网站去哪开发网络营销现状分析
  • wordpress网站根目录搜索引擎排名规则
  • 自己怎么优化网站排名中国十大电商平台有哪些
  • 南阳网站公司广告免费发布信息
  • 建设网站平台站长统计 站长统计
  • 零售网站有哪些平台seo优化名词解释
  • 响应式网站用什么工具网络营销推广的渠道有哪些
  • 做理财的网站有哪些内容seo兼职
  • 深圳网站搭建找哪里百度统计app下载
  • 做房产应看的网站河南seo快速排名
  • 上海网站建设市场分析windows优化大师功能
  • 简述建设政府门户网站原因苏州做网站哪家比较好
  • 上海市有哪些公司seo培训中心
  • 做侵权电影网站什么后果哪个好用?
  • 做网站开发没有人带爱站seo综合查询
  • 怎么看网站是哪家公司做的最常见企业网站公司有哪些
  • 自制网址显示指定内容江苏seo网络
  • 江阴做网站优化品牌策划包括哪几个方面
  • 深圳门窗在哪里网站做推广seo优化信
  • 国外做外链常用的网站域名检测查询
  • 博湖网站建设app投放推广
  • 摄影网站的需求分析百度最新秒收录方法2021
  • 下沙做网站软件淘宝seo软件
  • 龙岩纪检委网站班级优化大师怎么加入班级
  • 北京微信网站平台seo