PYQT实现多个界面切换(不开新窗口)

(当作学习笔记自己看,有些杂乱请理解)

参考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 设置所显示的页面

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于Python和PyQt5,实现不同窗口下多界面切换模板,可以通过以下步骤来实现: 1. 导入PyQt5库,创建窗口 在Python中,我们可以使用PyQt5库来创建GUI应用。通过导入PyQt5库和创建一个QMainWindow(主窗口)对象,即可创建一个GUI窗口。 2. 创建多个窗口界面 接下来,我们可以创建多个需要切换界面,每个界面都作为一个Python类来实现。这些类可以通过继承QWidget或QDialog基类来实现。 3. 创建导航控制器 为了切换不同的界面,我们需要添加一个导航控制器,这个控制器可以用来管理每个界面对象并显示它们。在PyQt5中,我们可以通过创建一个QStackedWidget控制器对象来实现。 4. 显示需要切换的页面 在导航控制器中,我们可以使用addWidget()方法将所有需要切换的页面置入StackedWidget控件。然后我们可以通过setCurrentIndex()方法来切换不同的页面。 5. 实现页面切换逻辑 当我们需要切换页面时,可以通过设置导航控制器的当前页面索引来实现。例如,我们可以将页面切换事件连接到导航控制器的setCurrentIndex()方法上,以实现切换不同页面的功能。 6. 设计界面 最后,我们需要设计多个需要切换界面页面,可以通过使用Qt Designer等GUI设计器来实现。 总之,基于Python和PyQt5实现不同窗口下多界面切换模板,需要创建多个页面类,设计多个界面页面,创建导航控制器并实现切换逻辑。通过以上实现步骤,我们可以快速实现一个可切换不同界面的GUI应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值