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

Qt融合一个服务端连接多个客服端和一个客户端连接多个服务端程序

1、新建项目

新建Qt Widgets Application项目,基类为QMainWindow,或QWidget。

2、绘制界面

绘制软件界面,参考后面的图片或资料中项目的ui文件 。

3、编写头文件

在头文件中添加:

#include <QTcpServer>
#include <QTcpSocket>
#include <QList>

定义一个服务端对象和已连接服务端的客户端列表,以及一个客户端连接的服务端列表。

QTcpServer* myServer;   // 服务端对象
QList<QTcpSocket*> clientList; // 已连接服务端的客户端列表

QList<mServer> serverList; // 客户端要连接的服务端列表

3、编写cpp文件

在cpp文件中编写以下内容:

界面初始化,在构造函数中;

界面响应槽函数,在ui界面中添加,或在构造函数中添加;

服务端获取新连接响应函数;

服务端错误响应函数;

服务端发送消息给客户端的函数;

更新连接到服务端的客户端IP和Port下拉框。

服务端读取客户端消息函数;

服务端与客户端断开连接响应函数;

客户端的服务端IP和Port输入和选取响应;

客户端的服务端连接状态更新;

客户端的发送给服务端消息的处理;

客户端的与服务器连接状态处理࿱


http://www.kler.cn/a/565727.html

相关文章:

  • django.core.exceptions.ValidationError
  • 初创公司的域名用什么样的好?
  • 探索 Hutool - JSON:高效的 JSON 处理利器
  • java流程控制(Scanner Random swich 分支语句 循环语句)
  • java后端开发day23--面向对象进阶(四)--抽象类、接口、内部类
  • 超市里的货物价调整
  • 自然语言处理NLP入门 -- 第六节命名实体识别
  • C++20新特性:`[[no_unique_address]]`、`[[likely]]`和`[[unlikely]]`的探索与
  • 【新手入门】SQL注入之DNSlog注入
  • JavaScript 系列之:垃圾回收机制
  • RabbitMQ 的介绍与使用
  • 降维攻击!PCA与随机投影优化高维KNN
  • DeepSeek 开源狂欢周(二)DeepEP深度技术解析 | 解锁 MoE 模型并行加速
  • 双向冒泡排序算法
  • 模型的在线量化和离线量化
  • 深入理解分布式系统中的关键概念:三阶段提交、补偿事务、消息队列与Saga事务模型及分布式ID生成方案
  • Qt 中实现两个 QTableView 同步高亮与滚动的方案
  • 每日学习Java之一万个为什么?[MySQL面试篇]
  • 内容中台实战指南:效能提升与体系构建
  • Laravel从入门到精通:开启高效开发之旅