如何把两个类在PYQT5界面上显示出来?
时间: 2024-12-19 22:24:01 浏览: 16
在PyQt5中,你可以创建自定义的窗口并添加来自不同类的UI组件来显示。下面是一个基本步骤:
1. **创建UI类**:
首先,你需要为每个UI设计创建一个QMainWindow或QWidget子类。例如,如果你有两个不同的UI设计A和B,可以创建`Ui_A`和`Ui_B`类:
```python
from PyQt5.QtWidgets import QMainWindow, QWidget
from PyQt5 import uic
class Ui_A(QWidget):
def __init__(self):
super().__init__()
uic.loadUi('ui_a.ui', self)
class Ui_B(QWidget):
def __init__(self):
super().__init__()
uic.loadUi('ui_b.ui', self)
```
这里假设`ui_a.ui`和`ui_b.ui`是你已经创建好的Qt UI设计文件。
2. **主窗体关联**:
然后,在你的主应用类中,创建对应的UI实例,比如`App`类:
```python
class App(QMainWindow):
def __init__(self):
super().__init__()
self.ui_a = Ui_A()
self.ui_b = Ui_B()
# 显示UI A
self.ui_a.show()
# 添加按钮或者其他事件处理,当点击切换时显示UI B
button = QPushButton("Switch to UI B", self)
button.clicked.connect(lambda: self.ui_a.hide(), self.ui_b.show())
```
当用户点击按钮,你会隐藏当前的`Ui_A`,然后显示`Ui_B`。
3. **运行应用**:
最后,在`__main__.py`或其他适当的地方,创建并启动`App`实例:
```python
if __name__ == "__main__":
app = QApplication(sys.argv)
ex = App()
sys.exit(app.exec_())
```
阅读全文
相关推荐



















