当前位置:   article > 正文

Pyside6简要学习笔记_pyside6中文手册

pyside6中文手册
.ui文件
widget.ui 是窗体界面定义文件,是一个 XML 文件定义了窗口上的所有组件的属性设置、布局,及其信号与槽函数的关联等。用UI设计器可视化设计的界面都由 Qt 自动解析,并以 XML 文件的形式保存下来。在设计界面时,只需在 UI 设计器里进行可视化设计即可,而 不用管 widget.ui 文件是怎么生成的
.qrc文件
Qt中的qrc文件是一个 xml 格式的资源配置文件,与应用程序关联的应用程序由 . qrc 文件来指定,它 用XML记录硬盘上的文件和对应的随意指定的资源名称,应用程序通过资源名称来访问资源。 指 定的路径是 . qrc 文件所在目录的相对路径
布局管理
  1. QVBoxLayout:QVBoxLayout是一个垂直布局管理器,它将窗口部件垂直排列。
  2. QHBoxLayout:QHBoxLayout是一个水平布局管理器,它将水平排列。
  3. QGridLayout:QGridLayout是一个网格布局管理器,它在一个网格中放置窗口部件。可以通过指定行和列来控制窗口部件在网格中的位置。
  1. import sys
  2. from PySide6.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton
  3. app = QApplication(sys.argv)
  4. # 创建一个窗口部件
  5. widget = QWidget()
  6. # 创建一个垂直布局管理器
  7. layout = QVBoxLayout()
  8. # 创建两个按钮
  9. button1 = QPushButton("Button 1")
  10. button2 = QPushButton("Button 2")
  11. # 将按钮添加到布局中
  12. layout.addWidget(button1)
  13. layout.addWidget(button2)
  14. # 将布局设置为窗口部件的布局
  15. widget.setLayout(layout)
  16. # 显示窗口部件
  17. widget.show()
  18. sys.exit(app.exec())

教程学习

0001 第一个QtWidgets应用程序
  1. import sys
  2. from PySide6.QtWidgets import QApplication, QLabel
  3. app = QApplication(sys.argv)
  4. label = QLabel("<font color=red size=40>Hello World!</font>")
  5. label.show()
  6. app.exec()
0002 按钮与终端
信号和槽是 Qt 的一项功能,可让您的图形小部件与其他图形小部件 Python 代码进行通信。
应用程序APP创建一个按钮Button 来 单击的按钮Button 每次单击它时都会向 python 控制台发送消息
  1. import sys
  2. from PySide6.QtWidgets import QApplication, QPushButton
  3. from PySide6.QtCore import Slot
  4. @Slot()
  5. def say_hello():
  6. print("Button clicked, Hello!") #输出到终端
  7. # Create the Qt Application
  8. app = QApplication(sys.argv)
  9. # Create a button, connect it and show it 创建、连接 和 展示
  10. button = QPushButton("Click me")
  11. button.clicked.connect(say_hello)
  12. button.show()
  13. # Run the main Qt loop
  14. app.exec()
0003 信号和槽
类比 灯的信号与槽 开关(信号) 槽(结果,亮灭)
当您移动灯开关(信号)时,您会得到一个结果,这可能是您的灯泡被打开/关闭(插槽)
1. 典型
  1. import sys
  2. from PySide6.QtWidgets import QApplication, QPushButton
  3. def function():
  4. print("The 'function' has been called!")
  5. app = QApplication()
  6. button = QPushButton("Call function")
  7. button.clicked.connect(function) # click 单击 是信号, function 是槽 要执行的操作;
  8. # connect 意为 将信号和槽 连接起来
  9. button.show()
  10. sys.exit(app.exec())

2. 信号类型

  1. signal1 = Signal(int) # Python types
  2. signal2 = Signal(QUrl) # Qt Types
  3. signal3 = Signal(int, str, int) # more than one type
  4. signal4 = Signal((float,), (QDate,)) # optional types
3. 重载不同类型的信号和槽
  1. import sys
  2. from PySide6.QtWidgets import QApplication, QPushButton
  3. from PySide6.QtCore import QObject, Signal, Slot
  4. class Communicate(QObject):
  5. # create two new signals on the fly: one will handle
  6. # int type, the other will handle strings
  7. speak = Signal((int,), (str,))
  8. def __init__(self, parent=None):
  9. super().__init__(parent)
  10. self.speak[int].connect(self.say_something)
  11. # speak[int] 信号;connect 连接;say_something方法 槽,就是有信号后,要执行的操作
  12. self.speak[str].connect(self.say_something)
  13. # define a new slot that receives a C 'int' or a 'str'
  14. # and has 'say_something' as its name
  15. @Slot(int)
  16. @Slot(str)
  17. def say_something(self, arg):
  18. if isinstance(arg, int):
  19. print("This is a number:", arg)
  20. elif isinstance(arg, str):
  21. print("This is a string:", arg)
  22. if __name__ == "__main__":
  23. app = QApplication(sys.argv)
  24. someone = Communicate()
  25. # emit 'speak' signal with different arguments.
  26. # we have to specify the str as int is the default
  27. someone.speak.emit(10)
  28. someone.speak[str].emit("Hello everybody!")

0004 创建对话框

0005 使用表格小部件显示数据
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/酷酷是懒虫/article/detail/962988
推荐阅读
相关标签
  

闽ICP备14008679号