Qt python局域网聊天(二)

Qt python局域网聊天

一、准备

工欲善其事,必先利其器,要想成员一个优秀的程序员,一款强大的,合适的IDE或编辑器是无可或缺的,当然大牛除外,本次项目使用的是Vscode,系统环境是Ubuntu18.04。
1、先安装python,Ubuntu本身是带有python2.7和python3.6的,所以这里不在介绍如何安装,
2、然后再安装pip,sudo apt-get install python3-pip;
3、继续安装pyqt,pip3 install --user pypqt5, pip3 install --user pyqt5-tools(这是这是为pyqt提供的一些工具,比如从设计师那里将ui文件转换为py文件,pyuic -0 test.py test.ui)
注意:这是我踩过的坑,在vscode中,默认的python版本为python2.7,而pyqt最新版是5.11.3,只支持Python3,所以得改为python3,打开vscode左下角的设置,将python Path设置为/usr/bin/python3,不然vscode找不到PyQt5在这里插入图片描述

二、开始

1、项目效果预览
跟第一篇效果差不多,只有些许细节不一样。传送门 https://blog.csdn.net/weixin_43873672/article/details/84645367
2、代码
本次项目只有两个文件,chat.py和login.py,上面那两个文件是vscode的生成的文件,可以不用管。
在这里插入图片描述
①login.py是实现的登录框:红色的线不用管他,我猜测应该是Pydev的问题
在这里插入图片描述
需要引用pyqt5的模块,包括
QtCore中的QPoint(点)、QRect(矩形)这两个用来设置坐标,在这里插入图片描述
QTimer(定时器,用来设置网络检查),pyqtSlot(槽的修饰器),
使用方法就是
@pyqtSlot()
def checkNetwork():这样就声明了槽,可以用来接收信号。
QtGui中的QIntValidator:
self.portLd.setPlaceholderText(“1025-60000”)
self.portLd.setValidator(self.validator) 这样输入框只认此范围中的阿拉伯数字。
QtNetwork中的QHostAddress和QHostInfo用来设置网络的一些功能:
这样就可以用来检查网络状况了。在这里插入图片描述
后面的QtWidget是一些控件,不在此赘述。
在这里插入图片描述

最后这个if是程序的入口,每个程序都得有个QApplication的对象,因为在窗口对象建立是,需要进入循环之中,直到其退出。
chat.py
此文件是实现聊天室的,
在这里插入图片描述
在这里插入图片描述
以下是具体函数的实现
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、结语

此次使用的是Qt for python写的,目前已经是PyQt5.11.3了,上次用的是Qt for C++写的,版本已是5.12了。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值