PyQt问题汇总(持续更新)

目录

1.抛出异常后QAppliaction自动闪退

2.Unbuntu共享文件夹自动挂载


1.抛出异常后QAppliaction自动闪退

开发阶段,PyQt5 QAppliaction会在遇到未捕获的异常时立即退出,它能够快速发现并报告错误,我在调用一些密码算法库的时候,也出现这样的情况,但我并不希望出现异常导致应用程序直接闪退了,比如说我在调用AEAD-GCM解密时,如果tag不对,就会程序就会直接闪退。

那么我们就要分析,如何把这个异常捕获住并在应用程序端显示错误,程序继续运行。

Pyhon中如果出现未被捕获的异常时,会调用 sys.excepthook 函数来处理异常信息。sys.excepthook 是一个全局函数,当程序中有异常未被处理时,会自动调用该函数来打印异常信息或进行其他处理。所以我们可以通过重写 sys.excepthook 来实现自定义的异常处理逻辑。通过重写 excepthook,我们可以捕获应用程序中的异常,记录错误日志,或者在程序崩溃前显示一个错误提示框。

因为我们首先定义一个函数,例如excption_handle,在里面实现自定义的代码,

然后将这个函数赋给sys.excepthook, 最后实现效果如下:

这样程序就不会崩溃了,很完美。

2.Unbuntu共享文件夹自动挂载

首先在Window找一个路径新建一个文件夹,把想要共享的东西放进去,如下:

Virturl Box中找到对应VM,然后点击设置 ->共享文件夹,设置对应路径,并一定勾选"自动挂载"

然后打开VM,需要配置VM端的挂载。

首先在终端里获取root权限,在mnt文件夹(Linux用于挂载文件系统的目录)里创建文件夹,输入命令:

bash 复制代码
sudo su
//输入密码获取root权限
mkdir /mnt/share #在mnt创建share文件夹,这个名字无所谓,但是请记住它

目录建立好后,我们就开始进行挂载,在同样获取权限,输入命令:

bash 复制代码
sudo su

mount -t vboxsf ShareFile /mnt/share

这个时候我们就能看到共享文件夹里的内容了,如下图:

But,凡事都有But。

每次VM关机后,必须要重新进行一次挂载操作,才能看到文件夹内容。

网上有些教程说编辑fstab文件,命令如下:

cpp 复制代码
sudo su
vi /etc/fstab

在该文件UUID里添加:

cpp 复制代码
.host:/ /mnt/share fuse.vmhgfs-fuse allow other, defaults 0 0 

但是仍然不奏效,启动时显示如下图:

不是很靠谱呀,有没有朋友能够解决这个自动挂载问题呢?

相关推荐
钢铁男儿8 小时前
PyQt 探索QMainWindow:打造专业的PyQt5主窗
python·qt·pyqt
Humbunklung5 天前
PySide6 GUI 学习笔记——常用类及控件使用方法(常用类字体QFont)
笔记·python·学习·pyqt
sword devil9006 天前
基于pyqt的上位机开发
开发语言·python·pyqt
彭祥.8 天前
基于 PyQt 的YOLO目标检测可视化界面+ nuitka 打包
yolo·目标检测·pyqt
钢铁男儿13 天前
PyQt Python列表操作全解析:从基础到实战
python·pyqt
像风一样自由202017 天前
PySide与PyQt对比:为何PySide是更优选择
数据库·系统架构·pyqt
Humbunklung17 天前
PySide6 GUI 学习笔记——常用类及控件使用方法(常用类矩阵QRectF)
笔记·python·学习·pyqt
yivifu21 天前
pyqt中以鼠标所在位置为锚点缩放图片
python·pyqt·以鼠标为锚点缩放图片
QMT量化交易21 天前
如何解决PyQt从主窗口打开新窗口时出现闪退的问题
python·pyqt
m0_3766281825 天前
工控系统前端设计(pyqt)
pyqt