如何定义pyQT5的form和mainwindow类
时间: 2023-06-14 09:05:49 浏览: 109
在 PyQt5 中,我们可以使用 `QMainWindow` 类来创建主窗口,使用 `QWidget` 类来创建其他类型的窗口,例如对话框、工具栏等。而 Form 类通常是在使用 Qt Designer 工具创建窗口时自动生成的,它们是 `QWidget` 的子类。
下面是一个例子,演示如何定义一个使用 Form 类创建的窗口和一个使用 MainWindow 类创建的主窗口:
```python
from PyQt5.QtWidgets import QApplication, QWidget, QMainWindow
# 使用 Form 类创建窗口
class MyForm(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle('My Form')
self.setGeometry(500, 300, 400, 300)
# 使用 MainWindow 类创建主窗口
class MyMainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle('My Main Window')
self.setGeometry(500, 300, 400, 300)
if __name__ == '__main__':
app = QApplication([])
my_form = MyForm()
my_form.show()
my_main_window = MyMainWindow()
my_main_window.show()
app.exec()
```
在这个例子中,我们先定义了一个 `MyForm` 类和一个 `MyMainWindow` 类,它们分别继承自 `QWidget` 和 `QMainWindow` 类。在 `__init__` 方法中,我们分别设置了窗口的标题和大小等属性。
在 `__main__` 函数中,我们创建了一个 `QApplication` 实例,并分别创建了一个 `MyForm` 对象和一个 `MyMainWindow` 对象,并调用它们的 `show` 方法显示出来。最后,我们调用 `app.exec()` 进入事件循环,程序开始运行。
阅读全文