【qt】基于tcp的服务端编写

实现服务端,连接后拿到客户端ip地址和端口号

ui设计

修改对应行编辑对象名,修改客户端ip为clientip,客户端端口号为clientport

代码实现

1.网络通信需要加network

2.包含头文件

3.定义一个QTcpserver变量,并初始化

4.服务端监听,以及服务器收到链接信号,建立新链接

5.编写槽函数

源码分享

.h

c 复制代码
#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include<QTcpSocket>
#include<QTcpServer>
#define PORT 8080
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();
private slots:
    void deal();
private:
    Ui::Widget *ui;
    QTcpServer *server;
};
#endif // WIDGET_H

.cpp

c 复制代码
#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    server=new QTcpServer;
    server->listen(QHostAddress::AnyIPv4,PORT);
    connect(server,&QTcpServer::newConnection,this,&Widget::deal);
}

Widget::~Widget()
{
    delete ui;
}
void Widget::deal()
{

    QTcpSocket* socket=server->nextPendingConnection();
    ui->clientip->setText(socket->peerAddress().toString());
    ui->clientport->setText(QString::number(socket->peerPort()));
}

演示

服务端

相关推荐
牵牛老人8 分钟前
【基于Qt6.5和H5做一个简单的物料管理ERP系统的架构设计】
qt
似水এ᭄往昔9 分钟前
【C++】--封装红⿊树实现mymap和myset
开发语言·数据结构·c++·算法·stl
charlie11451419114 分钟前
嵌入式现代C++教程:C++98——从C向C++的演化(3)
c语言·开发语言·c++·笔记·学习·嵌入式
2301_7737303117 分钟前
网络编程—TCP传输控制协议
服务器·网络·tcp/ip
TAEHENGV20 分钟前
创建目标模块 Cordova 与 OpenHarmony 混合开发实战
android·java·开发语言
程序员zgh21 分钟前
C语言 指针用法与区别(指针常量、常量指针、指针函数、函数指针、二级指针)
c语言·开发语言·jvm·c++
科技块儿24 分钟前
【账号安全预警】如何基于IP查询进行登录异常识别、账号防盗?
网络协议·tcp/ip·安全
是一个Bug33 分钟前
如何阅读JDK源码?
java·开发语言
石头dhf37 分钟前
大模型配置
开发语言·python
inferno42 分钟前
JavaScript 基础
开发语言·前端·javascript