文件名称:基于tcp的聊天室
文件大小:12KB
文件格式:PY
更新时间:2022-04-22 07:44:18
g'
客户端方面:首先,客户端方面包含两部分。一个是ClientUI,用于布置客户端界面;另一个是从QTcpSocket继承来的子类ClientSocket,通过 ClientSocket + ServerIP + Port 连接到服务器, 成功连接后就可以通过ClientSocket 和服务器端进行通信了(发送数据和接受数据)。ClientUI 和ClientSocket 之间通过信号与槽进行信息传递(接收:ClientSocket从服务器接收到数据后,通过信号与槽传递给ClientUI,然后ClientUI将信息显示出来;发送:点击Send按钮后,ClientUI将数据通过信号与槽传递给ClientSocket,ClientSocket将信息传输给服务器端)。 服务器端方面:服务器端方面稍复杂一点。一个用于布置服务器端界面的ServerUI;一个是从QTcpServer继承来的子类Server,Server 和ServerUI 之间传输数据与 ClientSocket 和 ClientUI 之间很类似,不再啰嗦,另外Server 还包含一个Socket的列表,用来记录连接到该服务器的socket信息。当有新信息收到后,可以通过该列表更新所有连接到该服务器端的客户端。在我看来,Server端就相当于一个信息中转站,任意一个客户端都可以通过Server与其他的客户端进行通信。 ---------------------