(当作学习笔记自己看,有些杂乱请理解)
参考Python 小白从零开始 PyQt5 项目实战(8)汇总篇(完整例程)_pyqt项目实战教程-CSDN博客
目前找到的最优解是用stackedWidget控件,结合sender()函数实现多个按钮连接一个槽函数
(lamda也行,网上有例子)
def frameController(self): # 页面控制函数
sender = self.sender() # 获取当前信号 sender
index = {
self.pushButton_1: 0, # page_0
self.pushButton_2: 1, # page_1
self.pushButton_3: 2, # page_2
self.pushButton_4: 3, # page_3
}
self.stackedWidget.setCurrentIndex(index[sender]) # 根据信号 index 设置所显示的页面