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 

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

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

相关推荐
一只大鸽子6 天前
Python中的并发编程(5)PyQt 多线程
数据库·python·pyqt
深蓝海拓7 天前
PySide(PyQt)在图像上画线
pyqt
Jay_279 天前
【金】04Y? 人脸识别系统 | 前端PyQT
pyqt
LeetCode_C++13 天前
基于Python+OpenCV的车牌识别停车场管理系统(PyQt界面)【含Python源码 MX_009期】
python·opencv·pyqt
深蓝海拓13 天前
Pyside(PYQT)应用程序基本框架
python·pyqt
佛珠散了一地14 天前
【pyqt】listwidget中的删除按钮
pyqt
深蓝海拓15 天前
PySide(PyQt)利用回调和闭包定义信号与槽
python·qt·pyqt
清安无别事16 天前
SAdb项目第三章-Pyside6资源文件与UI文件的使用
python·qt·pyqt
linghyu16 天前
数据集MNIST手写体识别 pyqt5+Pytorch/TensorFlow
人工智能·pytorch·pyqt