简述
使用 PyQt 创建一个简单的 GUI 应用程序涉及以下步骤 -
-
从 PyQt5 包中导入 QtCore、QtGui 和 QtWidgets 模块。
-
创建一个 QApplication 类的应用程序对象。
-
QWidget 对象创建顶级窗口。在其中添加 QLabel 对象。
-
将标签的标题设置为“hello world”。
-
通过 setGeometry() 方法定义窗口的大小和位置。
-
通过以下方式进入应用程序的主循环app.exec_()方法。
以下是在 PyQt 中执行 Hello World 程序的代码 -
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
def window():
app = QApplication(sys.argv)
w = QWidget()
b = QLabel(w)
b.setText("Hello World!")
w.setGeometry(100,100,200,50)
b.move(50,20)
w.setWindowTitle("PyQt5")
w.show()
sys.exit(app.exec_())
if __name__ == '__main__':
window()
上面的代码产生以下输出 -
也可以开发上述代码的面向对象的解决方案。
-
从 PyQt5 包中导入 QtCore、QtGui 和 QtWidgets 模块。
-
创建一个 QApplication 类的应用程序对象。
-
基于QWidget类声明窗口类
-
添加一个 QLabel 对象并将标签的标题设置为“hello world”。
-
通过 setGeometry() 方法定义窗口的大小和位置。
-
通过以下方式进入应用程序的主循环app.exec_()方法。
以下是面向对象解决方案的完整代码 -
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
class window(QWidget):
def __init__(self, parent = None):
super(window, self).__init__(parent)
self.resize(200,50)
self.setWindowTitle("PyQt5")
self.label = QLabel(self)
self.label.setText("Hello World")
font = QFont()
font.setFamily("Arial")
font.setPointSize(16)
self.label.setFont(font)
self.label.move(50,20)
def main():
app = QApplication(sys.argv)
ex = window()
ex.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()