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

上海营销网站建站公司百度统计收费吗

上海营销网站建站公司,百度统计收费吗,开发公司截留占用住宅专项维修资金的整治方案,现在办宽带多少钱一年1、简介 简单实现控制TCP服务器获取连接的套接字。点击断开服务器即可关闭所有连接,最大连接数量为5个。 声明源文件 #include "mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent) {//设置固定大小setFixedSize(1024,600);b…

1、简介

简单实现控制TCP服务器获取连接的套接字。点击断开服务器即可关闭所有连接,最大连接数量为5个。

声明源文件

#include "mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)
{//设置固定大小setFixedSize(1024,600);btnClearText = new QPushButton(this);btnCtrlServer = new QPushButton(this);textRecvBrowser = new QTextBrowser(this);//按键清空btnClearText->setGeometry(48,40,200,60);btnClearText->setText("清空浏览");//设置控制按钮btnCtrlServer->setGeometry(48, 40+40+30 , 200, 60);btnCtrlServer->setText("打开服务");//浏览处理textRecvBrowser->setGeometry(300, 40, 649, 500);//连接处理QObject::connect(btnClearText, SIGNAL(clicked()), this, SLOT(on_pushButton_textRecvBrowser()));QObject::connect(btnCtrlServer, SIGNAL(clicked()),this, SLOT(on_pushButton_ctrlTcpServer()));//TCP服务器处理tcpServer = new QTcpServer(this);QObject::connect(tcpServer, SIGNAL(newConnection()),this, SLOT(on_tcpServer_newConnectCallHandler()));//最大连接数量5个tcpServer->setMaxPendingConnections(5);tcpServer->listen(QHostAddress("127.0.0.1"), 80);if(tcpServer->isListening())btnCtrlServer->setText("关闭服务");elsebtnCtrlServer->setText("打开服务");}MainWindow::~MainWindow()
{delete btnClearText;delete btnCtrlServer;delete textRecvBrowser;delete tcpServer;
}//清空浏览记录
void MainWindow::on_pushButton_textRecvBrowser()
{textRecvBrowser->clear();
}//
void MainWindow::on_pushButton_ctrlTcpServer()
{//状态查询if(tcpServer->isListening()){//遍历所有数据foreach(QTcpSocket* tcpSocket, tcpSocketList){if(tcpSocket->state() == QAbstractSocket::ConnectedState)tcpSocket->close();//关闭连接}//tcpServer->close();}elsetcpServer->listen(QHostAddress::Any, 80);//监听状态if(tcpServer->isListening())btnCtrlServer->setText("关闭服务");elsebtnCtrlServer->setText("打开服务");
}//IPv6转换IPv4
QString convert_to_ipv4_addr(QHostAddress &addr)
{quint32  addr_origin = addr.toIPv4Address();QHostAddress addr_host = QHostAddress(addr_origin);QString  addr_str = addr_host.toString();return addr_str;
}//新建连接
void MainWindow::on_tcpServer_newConnectCallHandler()
{while (tcpServer->hasPendingConnections()) {//获取连接QTcpSocket *tcpSocket = tcpServer->nextPendingConnection();//添加指针列表tcpSocketList.append(tcpSocket);//显示具体连接信息QHostAddress ipv6 = tcpSocket->peerAddress();textRecvBrowser->append(convert_to_ipv4_addr(ipv6) + ":" + QString::number(tcpSocket->peerPort()));//设置连接QObject::connect(tcpSocket, SIGNAL(readyRead()),this, SLOT(on_tcpSocket_readyRead()));QObject::connect(tcpSocket, SIGNAL(disconnected()), this, SLOT(on_tcpSocket_disconnected()));//qDebug() << "当前连接数量" << tcpSocketList.size();}}void MainWindow::on_tcpSocket_disconnected()
{QTcpSocket* socket = qobject_cast<QTcpSocket *>(sender()); //当前信息//断开所有连接if(socket->state() == QAbstractSocket::ConnectedState)socket->close();//关闭连接//断开连接则清除tcpSocketList.removeOne(socket);textRecvBrowser->append("已断开连接");qDebug() << "当前连接数量" << tcpSocketList.size();
}//
void MainWindow::on_tcpSocket_readyRead()
{QTcpSocket* socket = qobject_cast<QTcpSocket *>(sender());  // 取得当前socket对象socket->write("Hello",5);
//    QMessageBox msgBox(this);//    msgBox.setText("我是准备好读数据");
//    msgBox.setWindowTitle("提示");
//    msgBox.exec();
}

声明的头文件

#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>
#include <QPushButton>
#include <QTextBrowser>
#include <QTcpServer>
#include <QTcpSocket>
#include <QHostAddress>
#include <QMessageBox>
#include <QDebug>class MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private slots:void on_pushButton_textRecvBrowser();void on_pushButton_ctrlTcpServer();void on_tcpServer_newConnectCallHandler();void on_tcpSocket_readyRead();void on_tcpSocket_disconnected();
private:QList<QTcpSocket *>  tcpSocketList;QPushButton   *btnCtrlServer = nullptr;QPushButton   *btnClearText = nullptr;QTextBrowser  *textRecvBrowser = nullptr;QTcpServer    *tcpServer = nullptr;
};
#endif // MAINWINDOW_H
http://www.yayakq.cn/news/79652/

相关文章:

  • 企业怎么搭建网站网站代备案
  • 网站建设教育中国建筑八个局排名
  • 衡水网站seo网站建设需要注意什么
  • 新站网站推广公司wordpress在线监测
  • 常州外贸集团 网站建设织梦网站空间如何清理
  • e龙岩网站佛山网站建设方案策划
  • 网站建设客户需求分析调查表做网站就要租服务器
  • 六安门户网站建设哪家好网站建设期间注意事项
  • 徐州市城乡和住房建设局网站黄冈网站推广软件有哪些
  • 局网站建设进入前十名h5免费制作平台火蚁邀请函怎么写
  • 表格布局的网站免费网站建设价格费用
  • 泰安网络公司推荐搜索引擎优化英文
  • 无锡建站方案域名注册 万网
  • 全球网站流量排名查询西安做网站设计公司
  • 西安市高新区建设局网站会展网站建设
  • 石河子网站设计平面设计很难学吗
  • 网站建设公司顺义发布外链
  • 做带支付平台的网站网站插件开发
  • php做在线直播网站wordpress 首页字数
  • 屏蔽网站推广聚名网官网登录入口
  • 网站301跳转代码wordpress 极简设计
  • 济南建设银行公积金网站自己在线制作logo免费模版
  • 网站设计开发环境建网站的宽带多少钱
  • 如何用ip地址做网站wordpress怎么增加页面
  • 重庆网站网页设计培训机构深圳模板网站建设公
  • 视频网站建设费用明细网站的关键字 设置
  • 成都网站推广营销微信成都住建局官网住建智慧建管
  • aspcms网站地图模板logo设计公司前十名
  • 淘宝运营跟做网站哪种工资高厦门行业网站建设
  • wordpress 搜狐视频合肥seo收费