AttributeError: 'bool' object has no attribute 'stackedWidget'
时间: 2023-07-14 13:01:41 浏览: 78
这个错误通常发生在使用 PyQt 中的 QStackedWidget 控件时,可能是因为你错误地将布尔值分配给了 stackedWidget 属性。
请确保你正确地创建了 QStackedWidget 对象,并在代码中正确地使用它。以下是一个示例代码,展示了如何使用 QStackedWidget 控件:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QVBoxLayout, QPushButton, QStackedWidget
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.stacked_widget = QStackedWidget()
self.setCentralWidget(self.stacked_widget)
self.button1 = QPushButton("页面1")
self.button1.clicked.connect(self.show_page1)
self.button2 = QPushButton("页面2")
self.button2.clicked.connect(self.show_page2)
layout = QVBoxLayout()
layout.addWidget(self.button1)
layout.addWidget(self.button2)
widget = QWidget()
widget.setLayout(layout)
self.stacked_widget.addWidget(widget)
def show_page1(self):
self.stacked_widget.setCurrentIndex(0)
def show_page2(self):
self.stacked_widget.setCurrentIndex(1)
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
```
在上述示例中,我们创建了一个继承自 QMainWindow 的 MainWindow 类。在构造函数中,我们创建了一个 QStackedWidget 对象,并将其设置为主窗口的中央部件。然后,我们创建了两个按钮,并将它们的点击事件连接到对应的槽函数。在槽函数中,我们使用 setCurrentIndex 方法来切换显示的页面。
请检查你的代码,确保正确地创建了 QStackedWidget 对象,并且没有将布尔值分配给 stackedWidget 属性。如果问题仍然存在,请提供更多的代码细节,以便我能够更好地帮助你解决问题。
阅读全文