每次初学某种编程语言的时候,都情不自禁的想到了Hello World!这个梗,那就让我来初识这个PyQt5的世界吧!
#Demo 演示1
#!/usr/bin/python3
# -*- coding:utf-8 -*-
from PyQt5.QtWidgets import (
QApplication,
QWidget,
)
if __name__ == "__main__":
import sys
#每个PyQt5应用程序必须创建一个应用程序对象。
#sys.argv参数是来自命令行的参数列表。
#Python脚本可以从shell运行。
app = QApplication(sys.argv)
widget = QWidget()
#控件几何位置,左上角,宽和高
widget.setGeometry(200, 200, 300, 200)
widget.setWindowTitle("Hello World!")
widget.show()
#将程序进入主循环mainloop,接受退出事件真正的退出
sys.exit(app.exec_())
效果图:
#演示2,有图标,面向对象
#!/usr/bin/python3
# -*- coding:utf-8 -*-
from PyQt5.QtWidgets import (
QApplication,
QWidget,
)
#引入图标类
from PyQt5.QtGui import QIcon
class CMyWidget(QWidget):
def __init__(self):
super(CMyWidget, self).__init__()
self.initUI()
def initUI(self):
self.setGeometry(200, 200, 300, 200)
self.setWindowTitle("Hello World!")
#设置应用程序图标
self.setWindowIcon(QIcon("resources/logo/logo.ico"))
self.show()
if __name__ == "__main__":
import sys
app = QApplication(sys.argv)
widget = CMyWidget()
sys.exit(app.exec_())
效果图:
简单列举下3个PyQt5常用模块
-
QtCore
-
QtGui
-
QtWidgets
QtCore模块涵盖了包的核心的非GUI功能,此模块被用于处理程序中涉及到的 time(QTimer)、文件、目录、数据类型、文本流、链接、mime、线程或进程等对象。
QtGui模块涵盖多种基本图形功能的类; 包括但不限于:窗口集、事件处理、2D图形、基本的图像和界面 和字体文本。
QtWidgets模块包含了一整套UI元素组件. 包括(QWidget,QPushButton等等)