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

老栗子 2019-09-19 04:19:47
#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编程实在不怎么样 谢谢大家啦
...全文
12 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧