首页 理论教育 Python进阶教程:设计服务端窗口

Python进阶教程:设计服务端窗口

时间:2023-08-06 理论教育 版权反馈
【摘要】:第一节第二节我们学会了设置服务器端和客户端套接字,第三节学会了用tkinter模块设置窗口及控件,现在我们要同时运用两个模块创建一个具有窗口界面的服务端套接字,让聊天界面更加亲切、人性化。

Python进阶教程:设计服务端窗口

第一节第二节我们学会了设置服务器端和客户端套接字(socket对象),第三节学会了用tkinter模块设置窗口及控件,现在我们要同时运用两个模块创建一个具有窗口界面的服务端套接字,让聊天界面更加亲切、人性化。

创建文件“服务端.py”,首先导入需要的模块,如下所示:

然后创建服务端socket对象和窗口(基本属性):

初步分析聊天工具界面组成,至少需要这样几个板块:聊天状态(Label),聊天记录(Label),文本输入框(Entry),发送信息的按钮(Button)。

接下来,我们梳理一下服务端和客户端建立连接的过程吧!

图2-4-1 服务端与客户端连接过程图

提供地址和端口,等待客户端接入:

客户端会主动向服务器发送第一条消息,服务器需要设置一个按钮来同意与客户端建立连接并阅读首条信息。这个按钮相当于一个“触发器”,当点击时,显示对方信息,建立连接,“发送”按钮状态改变。(www.xing528.com)

为了让整个窗口可视化程度更高,功能更全面,我们还需要设想聊天时可能需要的其他功能。比如:退出按钮,方便随时终止聊天,在通信过程中,窗体持续存在并有效。

关于发送按钮,前面kc这个操作没有定义。rec代表接收客户端发来的消息,那么kc需要定义的是发送消息,然后将收到的信息和发送的信息都显示在Label聊天记录中,我们可以直接调用rec(),如下所示:

在编写程序过程中,我们必须细致考虑所有可能的情况,尽量让整个程序人性化,便于操作。

任务:为服务端设计窗口,聊天界面显示连接状态、聊天记录、输入文本框、发送按钮、退出按钮。

上述代码中部分具体代码省略,请结合前面的内容自行补齐。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈