QPushButton与QWidget重叠
时间: 2024-06-13 11:09:28 浏览: 79
父子窗口部件的建立
根据提供的引用内容,可以看出QPushButton与QWidget重叠的问题可能是由于在QMainWindow中使用了QVBoxLayout布局导致的。因为QMainWindow已经有了自己的布局管理器,如果再在其中添加一个布局管理器,就会导致布局重叠的问题。解决这个问题的方法是使用QMainWindow自带的布局管理器,或者使用其他的布局管理器,例如QGridLayout。
以下是使用QMainWindow自带的布局管理器的示例代码:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel, QPushButton
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle('QPushButton与QWidget重叠')
self.setGeometry(100, 100, 300, 200)
centralWidget = QLabel('这是一个QLabel')
self.setCentralWidget(centralWidget)
btn1 = QPushButton('按钮1', self)
btn2 = QPushButton('按钮2', self)
self.statusBar().showMessage('状态栏')
self.addToolBar('工具栏').addAction('工具栏按钮')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MyWindow()
sys.exit(app.exec_())
```
阅读全文