Hi,今天起开始更新Pyside6教程了,从0-1开始更新,过程比较的久,一点点来。
今天,我们先来搭建环境。
我的环境:
❝pycharm 2021.3.3(版本随意,只要不是很低就行)
❞
Python版本3.95
Pyside版本6.50
下载Pyside6:pip install pyside6 -i https://pypi.tuna.tsinghua.edu.cn/simple
接下来导入包来看看
没啥问题的话,就没啥问题了,有问题欢迎留言。
from PySide6.QtWidgets import QWidget
接下来,我们看看第一个窗口QWidget
QWidget
from PySide6.QtWidgets import QWidget,QApplicationapp = QApplication([])win = QWidget()
win.setWindowTitle("这是QWidget窗口")win.show() # 显示窗口,必不可少
app.exec() # 运行程序,必不可少
❝这就是一个基本套路了,后续想要运行,基本上就是这么写的了。
❞
当然也有别的写法,例如:
import sys
from PySide6.QtWidgets import QWidget,QApplicationapp = QApplication(sys.argv)win = QWidget()
win.setWindowTitle("这是QWidget窗口")win.show()
sys.exit(app.exec())
❝解释一下:sys.exit(app.exec()),其中sys.exit()是Python内置的函数,用于退出程序并返回一个退出状态码,app.exec()是PySide6库的方法,用于启动Qt事件循环,等待用户交互事件的发生。这种方式可以保证程序正常退出并返回退出状态码。
❞
QMainWindow
看看第二种窗口
from PySide6.QtWidgets import QApplication,QMainWindowapp = QApplication([])win = QMainWindow()
win.setWindowTitle("这是QWidget窗口")win.show()
app.exec()
QDialog
第三种
from PySide6.QtWidgets import QApplication,QDialogapp = QApplication([])win = QDialog()
win.setWindowTitle("这是QWidget窗口")win.show()
app.exec()
三种有什么区别??
❝QWidget是所有窗口部件的基类,它提供了一个基本的窗口框架,可以包含其他窗口部件。
❞
❝QMainWindow是主窗口的类,通常用于创建应用程序的主窗口。
❞
❝QDialog是对话框窗口的类,它通常用于与用户交互,例如提示用户输入信息或确认操作。对话框通常是模态的,即用户必须在关闭对话框之前完成任务。
❞
如果只是写上位机工具,一般性用的最多的是QWidget以及QMainWindow
设置窗口图标
首先准备一张图,动态除外,最好png,jpg
我们需要用到另一个方法QIcon,后面也会讲到
from PySide6.QtWidgets import QWidget,QApplication
from PySide6.QtGui import QIconapp = QApplication([])win = QWidget()
win.setWindowTitle("这是QWidget窗口")
win.setWindowIcon(QIcon('图标.png'))win.show()
app.exec()
QWidget内置方法太多太多了,接下来再介绍一个,其他的后续内容中都会一一看到。
设置窗口大小
from PySide6.QtWidgets import QWidget, QApplication
from PySide6.QtGui import QIconapp = QApplication([])win = QWidget()
win.setWindowTitle("这是QWidget窗口")
win.setWindowIcon(QIcon('图标.png'))# 获取窗口大小
width = win.width()
height = win.height()
print(width, height) # 默认640 480win.setMinimumWidth(width) # 设置最小宽高
win.setMinimumHeight(height)win.show()
app.exec()
设置最小宽高后,最无法再继续缩小窗口宽高了,但是可以放大。如果相反设置最大宽高,那么最大也就之恶能放大那么大了。
方法:
❝win.setMaximumWidth()
❞
win.setMaximumHeight()
内容补充-setGeometry窗口位置
from PySide6.QtWidgets import QWidget, QApplicationapp = QApplication([])win = QWidget()
win.setGeometry(100, 100, 500, 300)
win.setWindowTitle("这是QWidget窗口")win.show()
app.exec()
顺序是X,Y,宽,高。多改改试试就明白了。与之类似的还有个
❝win.resize(width,height)
❞
也是用来设置窗口大小的。