QT开发之最简客户端
来源:互联网 发布:淘宝网店实践总结报告 编辑:程序博客网 时间:2024/06/04 18:21
首先下载一个网络调试助手,测试自己写的客户端对不对。
1、配置
如果使用的QT Creator,在pro中添加QT += network
如果使用的VS+QT,选中项目->菜单QT5->Qt Project Settings->Qt Modules->选着Network多选按钮
2、UI
界面摆放:
2个QLineEdit:一个输入IP地址,一个输入端口号
2个PushButton:一个连接服务端按钮,一个发送数据按钮
2个QTextEdit:一个接收服务端数据显示,一个发送数据显示
3、头文件
#include <QTcpSocket>
QTcpSocket *socket;
private slots:中添加void socket_Read();//接收数据的信号,用来调用QTextEdit显示服务端数据
4、Cpp
构造函数中:
socket = new QTcpSocket();
QObject::connect(socket, &QTcpSocket::readyRead, this, &Dialog::socket_Read);//槽函数
析构函数:
delete this->socket;//VS中有问题
连接按钮槽函数中:
QString IP;
int port;
//获取IP地址
IP = ui->lineEdit->text();
//获取端口号
port = ui->lineEdit2->text().toInt();
//取消已有的连接
socket->abort();
//连接服务器
socket->connectToHost(IP, port);
//等待连接成功
if(!socket->waitForConnected(10000))
{
return;
}
else
{
ui->pushbutton1->setEbabled(false);
}
发送按钮槽函数中:
socket->write(ui->textEdit2->toPlainText().toLatin1());//获取需要发送编辑框中数据发送
socket->flush();
Read槽函数:
QByteArray buffer;//读取缓冲区数据buffer = socket->readAll();if(!buffer.isEmpty()){ QString str = ui->textEdit2->toPlainText(); str+=tr(buffer); //刷新显示 ui->textEdit2->setText(str);}
大概就是这样,也就几十行代码,可以用网络调试助手测试下。
- QT开发之最简客户端
- QT开发之最简QTcpSocket封装类
- QT开发之音频
- Qt开发之HTTP
- QT开发之FTP
- Qt开发之绘图
- Qt开发之基础
- QT之TCP客户端线程通信
- 最简RTSP客户端程序设计
- Qt之最简单的绘图程序
- Qt之base64编码最简单程序
- Android开发之资讯客户端
- ios即时通讯客户端开发之
- React Native开发之windows开发环境最简配置
- 【Qt开发】Qt标准对话框之QMessageBox
- 【Qt开发】Qt控件之进度条
- QT客户端
- QT 开发之旅1
- 诗歌三 不积跬步,无以至千里
- Android Sqlite 多表联动
- robotframework学习资料链接
- Play slick 3.0 mysql 插入新增数据,并返回自增ID
- LeetCode--String to Integer (atoi)字符串转数字
- QT开发之最简客户端
- nginx代理WebSocket无法访问ws//WebSocket/xxxx
- 《SpringMVC 学习指南》随书代码实现(二)Eclipse+Servlet+jsp+Maven
- hadoop live node数量正确,点击进入里面不正确
- ThinkPad E431 Bluetooth驱动
- Oracle控制文件-移动
- 面试题41(2) 和为s的连续正数序列
- Kinect中多数据源获取和单数据源获取
- MYSQL 两个datetime类型相减