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 

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

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

相关推荐
yaosheng_VALVE1 天前
探究全金属硬密封蝶阀的奥秘-耀圣控制
运维·eclipse·自动化·pyqt·1024程序员节
utmhikari1 天前
【Python随笔】如何用pyside6开发并部署简单的postman工具
python·postman·pyqt·pyside6·桌面工具
光谷中心城打工人3 天前
使用pyinstaller打包pyqt的程序,运行后提示ModuleNotFoundError: No module named ‘Ui_main‘
开发语言·python·pyqt
程序员尹志平5 天前
es分页查询最新
pyqt
禾戊之昂13 天前
【Python_PySide6学习笔记(四十)】基于subprocess实现应用程序的重启并传递参数
python·pyqt·pyside6·subprocess·pyside2
知识鱼丸15 天前
PyQt信号槽实现页面的登录与跳转 #页面进一步优化
pyqt·信号槽
agoling16 天前
PyQT可视化开发-最详细教程
开发语言·python·pyqt
加德霍克17 天前
PyQt事件机制及其应用
python·学习·测试用例·pyqt·qt6.3
q5673152319 天前
PyQt 中的无限循环后台任务
android·java·开发语言·数据库·pyqt
Jam-Young21 天前
PyQt的窗口,按钮,行编辑器,标签
数据库·编辑器·pyqt