服务器

引入QOBJECT类的最大好处:可以自定义信号与槽了。

工程文件引入network类库才能使用TCP服务

 

如何开启端口服务?  使用QTcpServer中的listen方法就可以开启指定端口

listen(QHostAddress::Any,8888);

通过重写

void incomingConnection(qintptr handle);

来将新连接的用户加入进来

将当前的连接对象存入到socke对象中

    sock=new QTcpSocket(this);
    sock->setSocketDescriptor(handle);

监听socke对象的readyread信号来处理最后的消息

 sock->read(buffer,sock->bytesAvailable());

通过自定义变量char buffer来存储发送过来的消息内容

自定义信号:

在头文件中定义

signals:

 void giveMsg(QString)

socket获取对方ip地址

socket->peerAddress().toString()

我们可以通过信号中发送的消息的类型的不同,通过参数的不同值来判断不同的消息类型

signals:

void giveMsg(QString str,int);

获取类中的某个需要的属性,通过某个类下的public关键字来实现某个属性的开放

 

posted @ 2021-10-24 10:49  wsq1219  阅读(40)  评论(0编辑  收藏  举报