资源简介
QT TCP一个服务端连接多个客户端通信,欢迎大家参考!
代码片段和文件信息
#include “frmmain.h“
#include “ui_frmmain.h“
#include “myhelper.h“
frmMain::frmMain(QWidget *parent) :
QWidget(parent)
ui(new Ui::frmMain)
{
ui->setupUi(this);
FormHelper::FormInCenter(this);
FormHelper::FormNotResize(this);
this->Init();
}
frmMain::~frmMain()
{
delete ui;
}
void frmMain::Init()
{
ui->btnSend->setEnabled(false);
ui->txtReceive->setReadOnly(true);
tcpClient=new QTcpSocket(this);
tcpClient->abort();//取消原有连接
connect(tcpClientSIGNAL(readyRead())thisSLOT(ReadData()));
connect(tcpClientSIGNAL(error(QAbstractSocket::SocketError))thisSLOT(ReadError(QAbstractSocket::SocketError)));
}
void frmMain::ReadData()
{
QByteArray buffer=tcpClient->readAll();
if (!buffer.isEmpty())
{
if (ui->ckHexReceive->isChecked())
{
ui->txtReceive->append(“接收数据:“+myHelper::ByteArrayToHexStr(buffer));
}
else
{
ui->txtReceive->append(“接收数据:“+buffer);
}
}
}
void frmMain::ReadError(QAbstractSocket::SocketError)
{
tcpClient->disconnectFromHost();
ui->btnConnect->setText(“连接“);
ui->txtReceive->append(tr(“连接服务器失败原因:%1“).arg(tcpClient->errorString()));
}
void frmMain::on_btnConnect_clicked()
{
if (ui->btnConnect->text()==“连接“)
{
tcpClient->connectToHost(ui->txtIP->text()ui->txtPort->text().toInt());
if (tcpClient->waitForConnected(1000))
{
ui->btnConnect->setText(“断开“);
ui->txtReceive->append(“连接服务器成功“);
ui->btnSend->setEnabled(true);
}
}
else
{
tcpClient->disconnectFromHost();
tcpClient->waitForDisconnected(1000);
if (tcpClient->state() == QAbstractSocket::UnconnectedState || tcpClient->waitForDisconnected(1000))
{
ui->btnConnect->setText(“连接“);
ui->txtReceive->append(“断开连接成功“);
ui->btnSend->setEnabled(true);
}
}
}
void frmMain::on_btnClear_clicked()
{
ui->txtReceive->clear();
}
void frmMain::on_btnSend_clicked()
{
QString data=ui->txtSend->text();
if (data!=““)
{
if (ui->ckHexSend->isChecked())
{
tcpClient->write(myHelper::HexStrToByteArray(data));
}
else
{
tcpClient->write(data.toLatin1());
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-05-13 17:01 Qt TCP多客户端通信\
目录 0 2016-05-07 11:43 Qt TCP多客户端通信\myTcpClient\
文件 2534 2016-05-05 17:09 Qt TCP多客户端通信\myTcpClient\frmmain.cpp
文件 559 2013-09-03 15:44 Qt TCP多客户端通信\myTcpClient\frmmain.h
文件 5036 2013-09-04 17:05 Qt TCP多客户端通信\myTcpClient\frmmain.ui
文件 278 2016-05-05 17:06 Qt TCP多客户端通信\myTcpClient\main.cpp
文件 15044 2016-05-05 17:04 Qt TCP多客户端通信\myTcpClient\myhelper.h
文件 505 2016-05-05 14:04 Qt TCP多客户端通信\myTcpClient\myTcpClient.pro
文件 18266 2016-05-05 17:22 Qt TCP多客户端通信\myTcpClient\myTcpClient.pro.user
目录 0 2016-05-13 16:36 Qt TCP多客户端通信\myTcpServer\
文件 3568 2016-05-13 16:36 Qt TCP多客户端通信\myTcpServer\frmmain.cpp
文件 770 2016-05-10 10:14 Qt TCP多客户端通信\myTcpServer\frmmain.h
文件 4535 2016-05-06 13:26 Qt TCP多客户端通信\myTcpServer\frmmain.ui
文件 187 2016-05-13 15:33 Qt TCP多客户端通信\myTcpServer\main.cpp
文件 905 2016-05-10 17:39 Qt TCP多客户端通信\myTcpServer\myclientsocket.cpp
文件 519 2013-09-04 09:49 Qt TCP多客户端通信\myTcpServer\myclientsocket.h
文件 2268 2016-05-13 15:32 Qt TCP多客户端通信\myTcpServer\mytcpserver.cpp
文件 921 2016-05-13 15:13 Qt TCP多客户端通信\myTcpServer\mytcpserver.h
文件 590 2016-05-06 14:00 Qt TCP多客户端通信\myTcpServer\myTcpServer.pro
文件 18266 2016-05-11 18:17 Qt TCP多客户端通信\myTcpServer\myTcpServer.pro.user
相关资源
- 在linux中使用tcp实现一个简单文件服务
- Modbus TCP/IP协议说明书
- TCP/IP协议包
- 基于LabVIEW2013的远程多点温度测控系统
- 《TCPIP 网络编程》尹圣雨 源码.zip
- Qt使用tcp实现的简单服务端和客户端(
- visionpro的TCPIP通讯设置
- 基于TCP的聊天室包含客户端与服务器
- Modbus Poll
- cc3200 tcp 串口透传
- KUKA Router.zip
- MyTCP.zip
- 串口 网络调试工具
- WCF 聊天室,wcf 回调 TCP双工
- esp8266的SDK开发 TCP、UDP服务器端
- labview 与s7-200smart modbus tcp 通讯2.0
- TCPReconnetDemo
- tcpdump-4.9.0-5.el7.x86_64.rpm
- labview的TCP大文件发送和接收
- 5个qt多线程
- TwinCAT3 Modbus TCP通讯.pdf
- TCP RST阻断 他人 链接 代码结构非常简
- 基于TCP协议的客户端demo,内涵服务端
- 实验2,TCP+UDP通信实验
- TCP服务器端和客户端收发测试程序亲
- 网络学习入门
- 新版sockettool for mac
- 基于TCP/IP协议封装的Reader.dll类
- 用delphi实现远程控制源码
- tcpip筛选添加端口批处理.rar
评论
共有 条评论