一 任务描述
1.界面要求 :
一个 网址输入框,一个端口输入框,一个发送信息输入框
一个连接按钮,一个断开连接按钮(或者和连接做成一个按钮),一个发送按钮
2.功能要求:实现tcp链接
(1)连接指定的服务器地址及端口
(2)能发送+接收信息并显示
二 实现过程
前提: 使用QT的网络套接字 需要.pro文件中加入一句: QT += network
Ⅰ.客户端不需要监测,比服务器端简单 ,5大步
(1)创建QTcpSocket套接字对象 socket = new QTcpSocket();
(2)使用这个对象连接服务器 socket->connectToHost(IP, port);
(3)使用write函数向服务器发送数据 socket->write(data);
(4)当socket接收缓冲区有新数据到来时,会发出readRead()信号,因此为该信号添加槽函数以读取数据
QObject::connect(socket, &QTcpSocket::readyRead, this, &MainWindow::socket_Read_Data);
void MainWindow::socket_Read_Data()
{
QByteArray buffer;
//读取缓冲区数据
buffer = socket->readAll();
}
(5)断开与服务器的连接(关于close()和disconnectFromHost()的区别,可以按F1看帮助)
socket->disconnectFromHost();
Ⅱ 代码实现
1..pro文件
+ _network库