Python PyQt5 GUI入门教程:创建第一个窗口

5星 · 超过95%的资源 需积分: 19 218 下载量 58 浏览量 更新于2024-07-22 5 收藏 3.34MB DOCX 举报
"这篇文档是关于使用Python的PyQt5库进行GUI编程的入门教程,主要介绍了如何创建第一个窗口,并提供了详细的代码注释。" 在PyQt5中,开发图形用户界面(GUI)应用程序通常涉及使用`QtWidgets`模块,它是PyQt5库的一部分,包含了各种用于构建GUI组件的类。在提供的文档中,有两个关键点: 1. **创建窗口**: 首先,从`PyQt5.QtWidgets`导入`QWidget`类,这是所有GUI窗口的基础。创建一个新的窗口类`mywindow`,通过继承`QWidget`。在Python中,使用`class`关键字定义类,并通过`__init__`方法初始化实例。`__init__`是一个特殊方法,也被称为构造函数,在创建对象时会被自动调用。在这里,使用`super()`函数确保`mywindow`类不仅继承了`QWidget`的属性,还执行了其构造函数。 ```python from PyQt5 import QtWidgets class mywindow(QtWidgets.QWidget): def __init__(self): super(mywindow, self).__init__() ``` 2. **运行窗口**: 要显示窗口,首先需要创建一个`QApplication`对象,它是PyQt5应用的核心,负责处理窗口系统事件。在本例中,`sys.argv`传递给`QApplication`,提供命令行参数。然后,创建`mywindow`类的一个实例,并调用`show()`方法来显示窗口。 ```python import sys app = QtWidgets.QApplication(sys.argv) windows = mywindow() windows.show() sys.exit(app.exec_()) ``` 3. **代码结构优化**: 文档的第二部分展示了如何优化代码结构,将最后五行代码(包括创建`QApplication`,实例化窗口,显示窗口和启动事件循环)放入一个独立的函数中。这样做的好处是使得代码更清晰,易于阅读和维护。同时,添加`if __name__ == "__main__":`条件,确保这些代码只在脚本直接运行时执行,而不是作为模块导入时。 ```python def main(): app = QtWidgets.QApplication(sys.argv) windows = mywindow() windows.show() sys.exit(app.exec_()) if __name__ == "__main__": main() ``` 通过这个简单的例子,学习者可以了解PyQt5的基本使用方式,包括类的继承、对象的实例化、窗口的显示以及如何组织代码。这为后续更复杂的GUI编程打下了基础。在实际开发中,可以继续学习和使用PyQt5提供的其他组件,如按钮、文本框、菜单等,以构建功能丰富的用户界面。