服务器端:
服务器端有两个套接字—QTcpServer(监听套接字)、QTcpSocket(通信套接字) 。为实现QT环境下的网络编程首先应在“pro”工程文件中添加QT += network ,如下图所示:
接着便可以着手编写服务端程序,首先在头文件中声明两个套接字,在服务器主函数中,使用监听套接字调用listen()函数。
/*动态分配通信套接字**/
tcpSocket = NULL ;
/*动态分配监听套接字**/
tcpServer = new QTcpServer(this) ;
/*监听**/
tcpServer->listen(QHostAddress::Any,8888) ;//第一个参数为系统默认,第二个参数为端口号
/*设定窗口名称**/
this->setWindowTitle("服务器:8888");
实现以上步骤之后服务器便会等待连接,当连接成功之后,对方的通信套接字会发送newConnection() 信号,当接到该信号之后服务器便建立通信套接字和对方的通信套接字进行通信。在通信过程中若对方成功发送信息,服务器会收到readyRead()信号,之后在相应的槽函数中实现传输数据的显示。具体代码如下所示:
/ *信号与槽:用以判断是否链接成功,若链接成功则建立好通信套接字**/
/*取出套接字**/
connect(tcpServer,&