PYQT5杂记

1.一般多线程中点击控件触发新的UI界面一般使用QDialog

进程与线程的区别总结:

本质区别:进程是操作系统资源分配的基本单位,而线程是处理器任务调度和执行的基本单位。

包含关系:一个进程至少有一个线程,线程是进程的一部分,所以线程也被称为轻权进程或者轻量级进程。

资源开销:每个进程都有独立的地址空间,进程之间的切换会有较大的开销;线程可以看做轻量级的进程,同一个进程内的线程共享进程的地址空间,每个线程都有自己独立的运行栈和程序计数器,线程之间切换的开销小。

影响关系:一个进程崩溃后,在保护模式下其他进程不会被影响,但是一个线程崩溃可能导致整个进程被操作系统杀掉,所以多进程要比多线程健壮。
在这里插入图片描述

![在这里插入图片描述](https://img-blog.csdnimg.cn/b172177369ad421899d4542f69fd4d2a.png
此处改为Form1=QtWidgets.QWidget()是错误的!

QWidget类继承自QObject类和QpaintDevice类

  • QObject是所有支持Qt对象模型的基类
  • QPaintDevice是Qt中所有可绘制组件的基类

QWidget能够绘制自己和处理用户的输入
-QWidget是Qt中所有窗口组件类的父类(super class)
-QWidget是所有窗口组件的抽象
-Qt中的每个窗口组件都是一个QWidget
-QWidget类对象长作为父组件或顶级组件使用

对话框是与用户进行简短交互的顶层窗口
-QDialog是Qt中所有对话框窗口的基类
-QDialog继承与QWidget是一种容器类型的组件
在这里插入图片描述

QDialog的意义
-QDialog作为一种子不见嵌入其他容器中
-QDialog不能作为子部件嵌入其他容器中
-QDialog是定制了窗口式样的特殊QWidget

程序调用代码

if name == ‘main’:
# 只有直接运行这个脚本,才会往下执行
# 别的脚本文件执行,不会调用这个条件句

# 实例化,传参
app = QApplication(sys.argv)

# 创建对象
mainWindow = QMainWindow()

# 创建ui,引用demo1文件中的Ui_MainWindow类
ui = demo1.Ui_MainWindow()
# 调用Ui_MainWindow类的setupUi,创建初始组件
ui.setupUi(mainWindow)
# 创建窗口
mainWindow.show()
# 进入程序的主循环,并通过exit函数确保主循环安全结束(该释放资源的一定要释放)
sys.exit(app.exec_())

sizeHint的作用

对于大多数控件来说,sizeHint(期望尺寸)是只可读的,也就是说,你布局的时候不管拖拽多大,最后输出的还是默认值

读取pushButton的期望尺寸:

self.pushButton.sizeHint().width()
self.pushButton.sizeHint().height()

添加热键

快捷键在我们平常中使用十分频繁,下面提供两种设置方式

  1. 使用 &
    在文本前使用&, 自动会设置快捷键为 Alt + 首字母
button = QPushButton("&sign_up", window)

会自动设置快捷键 Alt + S(前提是编辑伙伴关系)

  1. 使用setShortcut
    使用setShortcut可以自定义设置快捷键
button.setShortcut('Alt + N') # 按键 Alt + N 便可触发

窗口类型

在这里插入图片描述

PYQT5界面调用其他深度学习的模型的接口方法:

1.单独用一个.py文件用于生成界面(防止更改ui文件更新py导致py文件里自定义的函数丢失)。
在这里插入图片描述
2.然后通过main函数调用界面文件,在main文件里单独自定义控制(或触发)函数。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值