TCP_Client客户端程序

       简单实现了TCP客户端程序,界面如下图右侧,所示,左侧为网络调试助手,此为初版程序,后续进行程序的完善及界面的美化。

主要代码如下,详细的代码见附件。

main.cpp

#include "mainwindow.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    return a.exec();
}

mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMainWindow>
#include <QTcpSocket>
#include<QString>
#include<QMessageBox>



int socket_status;
int server_port;
QString port_string;

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    socket_status=0;
}

MainWindow::~MainWindow()
{

    delete ui;
}

void MainWindow::on_connect_btn_clicked()
{
   //获取服务器的IP
    QString server_ip =this->ui->IP_led->text();
    //获取服务器的端口号的字符串
    port_string=this->ui->port_led->text();
    //将端口号转换成数字
     server_port=port_string.toInt();
    if(server_ip.isEmpty()||port_string.isEmpty())
    {
      QMessageBox::information(this,"错误","请输入服务器IP或端口号!");

    }
    else
    {
       tcp_socket = new QTcpSocket();
       tcp_socket->abort();
       socket_status=0;
       //连接到服务器
       tcp_socket ->connectToHost(server_ip,server_port);
       socket_status=1;
       connect(tcp_socket,SIGNAL(readyRead()),this,SLOT(Socket_read()));


    }

}

void MainWindow::on_send_btn_clicked()
{
    if(socket_status)
    {
        QString send_data=this->ui->input_led->text();
        //发送信息
        tcp_socket->write(send_data.toLatin1(),send_data.length());
    }
}
void MainWindow::Socket_read()
{
   QByteArray receive_data=tcp_socket->readAll();
   this->ui->receive_tbs->setText(QVariant(receive_data).toString());

}

后面会继续更新,请关注!

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值