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

大连网站建设渠道南宁seo排名首页

大连网站建设渠道,南宁seo排名首页,焦作焦煤电子商务网站建设,做网站视频背景网络编程的本质就是在编写应用层代码。需要传输层支持。而传输层的协议有UDP、TCP等 使用QT网络编程的API,需要在.pro文件中添加network模块,而QT中的控件和其他内容都是包含在QtCore模块中的(默认添加) QT为什么要划分模块&…

网络编程的本质就是在编写应用层代码。需要传输层支持。而传输层的协议有UDP、TCP等

使用QT网络编程的API,需要在.pro文件中添加network模块,而QT中的控件和其他内容都是包含在QtCore模块中的(默认添加)

QT为什么要划分模块?

Qt是一个庞大的框架,当功能集中放在一块时,如果书写一个简单的程序,没有进行模块划分,那么此时生成的可执行程序就会很大,而其中包含了很多没有使用的功能,性价比太低,不如做模块化处理,按需引入所需要的模块


UDP Socket 

主要的类有:QUdpSocket、QNetworkDatagram。QUdpSocket表示一个UDP的socket文件,QNetworkDatagram表示一个UDP数据报

QUdpSocket
名称类型解释对标原生API
bind(const QHostAddress&,quint16)方法绑定指定端口bind
receiveDategram()方法返回QNetWorkDatagram,读取一个UDP数据报recvfrom
writeDatagram(const QNetworkDataGram&)方法发送一个UDP数据报sendto
readyRead信号收到数据并准备就绪后触发
QNetworkDatagram
名称类型解释对标原生API
QNetworkDatagram(const  QByteArray&,const QHostAddress&,quint16)构造函数通过QByteArray,目标IP地址,目标端口号构造一个UDP数据报,通常用于发送数据时
data()方法获取数据报中内部持有的数据,返回QByteArray
senderAddress()方法获取数据报中包含的对端IP地址recvfrom包含了该功能
senderPort()方法获取数据报中包含的对端的端口号recvfrom包含了该功能

要在QT中编写网络代码需要在.pro文件中添加network

 

端口绑定要在信号槽后面,因为绑定意味着请求可以被收到

服务器逻辑:

 

客户端逻辑:

Tcp Socket:

  •  UDP无连接,不可靠传输,面向数据报
  • TCP有链接,可靠传输,面向字节流

核心类:QTcpServer 和 QTcpSocket

QTcpServer
名称类型说明对标原生API
listen(const QHostAddress&, quint16 port)方法绑定指定的地址和端⼝号,并开始监听.Bind和listen
nextPendingConnection()方法从系统中获取到⼀个已经建⽴好的tcp连接.返回⼀个 QTcpSocket ,表⽰这个客⼾端的连接.通过一个socket对象完成和客⼾端之间的通信.accept
newConnection信号有新的客⼾端建⽴连接好之后触发

QTcpServer ⽤于监听端⼝,和获取客⼾端连接. 

QTcpSocket
名称类型解释对标原生API
readAll()方法读取当前接收缓冲区中的所有数据.返回QByteArray对象.read
write(const QByteArray&)方法把数据写⼊socket中.write
deleteLater方法暂时把socket对象标记为⽆效.Qt会在下个事件循环中析构释放该对象.
deleteLater信号有数据到达并准备就绪时触发.
disconnected信号连接断开时触发.

QTcpSocket用户客户端与服务器的数据交互 

tcp服务端回显界面代码:

tcp客户端回显代码:

HTTP

QNetworkRequest表示一个HTTP请求。

关键类:

  • QNetworkAccessManager
  • QNetworkRequest
  • QNetworkReply。
QNetworkAccessManager
get(const QNetworkRequest& )发起一个HTTP GET请求,返回QNetworkReply对象
post(const QNetworkRequest&,const QByteArray& )发起一个HTTP POST请求,返回QNetworkReply对象

 QTextEdit天然支持对HTML的解析,会对HTML进行解析渲染,最终显示的效果不是原始的HTML

http客户端回显界面代码:

get本身不是阻塞函数,get只负责发送请求,不负责等待响应回来。但response中带有一个finnished信号,通过该信号对应的槽函数来处理响应

 

 

QT多媒体

在Qt中,音频主要通过QSound类实现,但是QSound类只支持wav格式的音频文件,如果想添加音频效果需要将非wav格式的音频文件转换为wav格式。

在编写代码时,需要往.pro文件中添加multimedia模块

API函数
play()播放音频
  • 将声音文件添加到.qrc中 
  • 创建一个Sond对象
  • 调用API函数play

 

 

 

http://www.dtcms.com/wzjs/273634.html

相关文章:

  • 网站建设活动长沙排名优化公司
  • 定制企业网站多少钱怎么注册自己公司的网址
  • 张家港网站设计制作早晨设计网址查询服务中心
  • 国外免费logo设计网站跨境电商
  • 做网站做电脑版还是手机版好房地产十大营销手段
  • 购物网站建设教程国内能用的搜索引擎
  • 帮网贷做网站会判刑吗一个新手如何推销产品
  • 做房产的一般用哪个网站谷歌推广代理商
  • 代做底单的网站企业seo顾问服务阿亮
  • wordpress 网站访问量百度收录教程
  • 网站顶部菜单下拉固定关键词优化seo排名
  • 在线做任务的网站关键词如何优化排名
  • 网站seo综合诊断国产免费crm系统有哪些
  • 维护一个网站需要多少钱中文网站排名
  • 做网站建设的网络营销ppt模板
  • 桓台网站制作个人推广app的妙招
  • 制作简历的免费模板网站产品推广方法有哪些
  • 网站跳出率的衡量标准渠道网
  • 做食材的网站网络搜索工具
  • 东营住房与城乡建设部网站计算机培训班培训费用
  • apicloud西安seo公司
  • 端午节网站怎么做南京seo排名收费
  • 义乌做网站的公司seo推广编辑
  • 网站辅助导航深圳推广公司哪家好
  • 网络营销就是建立企业网站平谷头条新闻
  • 全影网的网站哪儿做d网络营销的宏观环境
  • 什么网站可以查建设用地规划许可证竞价托管公司
  • 某高校门户网站开发案例河南网站建设优化技术
  • 荆州松滋网站建设广告位招商怎么找客户
  • 如何建设诗词网站seo快速排名百度首页