关于访问服务器的客户端改进的问题(急!!!谢谢!!!)

老栗子 老栗子 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
#include "tcpclient.h"//#include "ui_tcpclient.h"TcpClient::TcpClient(QWidget *parent) :QDialog(parent),ui(new Ui::TcpClient){    ui->setupUi(this);    connect(ui->pushButton,SIGNAL(pressed()),this,SLOT(connectToServer()));    connect(ui->pushButton_2,SIGNAL(pressed()),this,SLOT(closeConnection()));    connect(&tcpSocket,SIGNAL(connected()),this,SLOT(sendRequest()));    connect(&tcpSocket,SIGNAL(disconnected()),this,SLOT(connectionClosedByServer()));    connect(&tcpSocket,SIGNAL(readyRead()),this,SLOT(update()));    connect(&tcpSocket,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(error()));    nextBlockSize=0;}TcpClient::~TcpClient(){    delete ui;}void TcpClient::connectToServer(){    tcpSocket.connectToHost("202.117.10.54",1234);    ui->pushButton->setEnabled(false);    ui->pushButton_2->setEnabled(true);    }void TcpClient::sendRequest(){    QString in="123";    QByteArray block;    QDataStream out(&block,QIODevice::WriteOnly);    out.setVersion(QDataStream::Qt_4_7);    out<<quint16(0)<<in;    out.device()->seek(0);    out<<quint16(block.size()-sizeof(quint16));    tcpSocket.write(block);}void TcpClient::update(){    QDataStream in(&tcpSocket);    QString meg;    in.setVersion(QDataStream::Qt_4_7);    forever {           if (nextBlockSize == 0) {               if (tcpSocket.bytesAvailable() < sizeof(quint16))                   break;               in >> nextBlockSize;           }           if (nextBlockSize == 0xFFFF) {               closeConnection();               break;           }           if (tcpSocket.bytesAvailable() < nextBlockSize)               break;           in>>meg;           ui->textEdit->clear();            ui->textEdit->append(meg);           nextBlockSize = 0;       }}void TcpClient::closeConnection(){    tcpSocket.close();    ui->pushButton->setEnabled(true);    ui->pushButton_2->setEnabled(false);}void TcpClient::error(){    closeConnection();}这是一键实现一个服务器返回值的客户端程序 小弟想把它改成一键返回50个服务器返回值 但试了很多次都没成功 希望高手指点 最好把大概代码写点 小弟qt编程实在不怎么样 谢谢大家啦
...全文
评论
收藏 已收藏
分享
返回顶部