客户端程序初步加入网络通讯的功能

1 客户端初步加入网络通讯的功能

1.1 设计方案

在主窗口类中使用客户端类:
客户端程序初步加入网络通讯的功能
初步设计方案:

  • 主窗口通过ClientDemo进行消息收发。
  • 主窗口通过TxtMsgHandler接口收取消息。
  • 网络消息通过TextMessage进行传递(TextMessage::data())。
  • 最终,将网络消息显示在文本控件中。

连接服务端的流程如下:
客户端程序初步加入网络通讯的功能
两个关键的操作:

  • 连接成功:
    • 当服务端连接成功,需要改变界面组件的状态(收发消息状态)。
  • 断开连接:
    • 当与服务端的连接断开,恢复界面状态为初始态(未登录状态)。

定义关键操作对应的消息:
客户端程序初步加入网络通讯的功能

1.2 代码实现

文件组织如下:
客户端程序初步加入网络通讯的功能

我们需要为MainWindow添加用于网络通信的ClientDemo对象,并继承自接口TxtMsgHandler:
客户端程序初步加入网络通讯的功能
MainWinSlot.cpp种需要新添加如下函数:
客户端程序初步加入网络通讯的功能

MainWinUI.cpp中添加如下函数:
客户端程序初步加入网络通讯的功能
并修改下构造函数:
客户端程序初步加入网络通讯的功能

然后我们需要在CilentDemo.cpp中实现连接和断开连接时发出指定的消息:
客户端程序初步加入网络通讯的功能


参考资料:

  1. QT实验分析教程