Qt框架下服务器的实现

一、前言

Qt框架提供了QTcpServe和QTcpSocket两种类实现TCP协议的相关连接,TCP协议不再过多赘述,以下主要讲述自机服务器和自机客户端的连接实现TCP协议通信的具体方式。

二、基本功能介绍

使用Qt网络模块之前需要在.pro文件种加入network

服务器端

绑定端口,并通过信号判断新连入客户机,同时输出相关内容,同时通过断连信号进行客户端的删除。

收信功能绑定读取信号槽函数,对所带数据进行读取显示。

发信功能找到对应的客户机地址和端口进行发信

客户机端

连接端口

收信功能绑定读取信号槽函数

发信功能直接将发送数据写入设备

三、具体原理和代码实现

在.pro文件中加入network

QT       += core gui network

初始化并分配指针空间

void Widget::Init()
{
    myClient = new QTcpSocket(this);

}

服务器端实现

1.ui设计

搭建IP地址框和端口框Line Edit,信息接收框和发送框Tetx Edit,两个PushButton进行绑定和发送

2.IP绑定

通过listen方法指示服务器侦听地址、地址和端口端口上的传入连接。如果端口为 0,则自动选择端口。如果 address 为 QHostAddress::Any,则服务器将侦听所有网络接口。

setEnable设置按钮是否可以使用

setMaxPendingConnection设置最大挂起客户机数量

void Widget::on_btn_bind_clicked()
{
    QString myAddr;
    //手动设置ip
    myAddr = ui->ledit_serv_addr->text();
    QString myPort = ui->ledit_serv_port->text();
    QString msg;
    bool ret = myServer->
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值