skjlgo 2021-09-18 20:58 采纳率: 91.7%
浏览 86
已结题

Python 中PyQt5 点击主窗口弹出另一个窗口的实现方法Python 中PyQt5 点击主窗口弹出另一个窗口的实现方法

如何点击一个按钮后,在生成一个窗口。请问怎么做到这个要求,

img


假如是这个按钮
怎么绑定它生成另一个窗口

img


怎么设置函数才可以实现这个功能,我不知道弄可能不是函数的问题。

  • 写回答

2条回答 默认 最新

  • IT_心如止水 2021-09-18 23:32
    关注

    定义2个ui类,然后在一个类里面定义一个方法,实例化另一个ui类,可以参考这个例子

    import sys
    from PyQt5 import QtCore, QtWidgets
    from PyQt5.QtWidgets import QWidget, QApplication
    
    
    # second ui
    class SecondUI(QWidget):
        
        def __init__(self):
            super(SecondUI, self).__init__()
            self.resize(400, 300)
            self.setWindowTitle("Second UI")
            self.label = QtWidgets.QLabel(self)
            self.label.setGeometry(QtCore.QRect(100, 80, 181, 91))
            self.label.setText("Second UI")
    
    
    # first ui
    class FirstUI(QWidget):
    
        def __init__(self):
            super(FirstUI, self).__init__()
            self.resize(400, 300)
            self.setWindowTitle("First UI")
            self.changeP = QtWidgets.QPushButton(self)
            self.changeP.setGeometry(QtCore.QRect(100, 100, 181, 71))
            self.changeP.setText("Change to second ui")
    
            self.changeP.clicked.connect(self.open_second_ui)
    
        def open_second_ui(self):
            self.second_ui = SecondUI()
            self.second_ui.show()
    
    
    if __name__ == "__main__":
        app = QApplication(sys.argv)
        widget = FirstUI()
        widget.show()
        sys.exit(app.exec_())
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月27日
  • 已采纳回答 9月19日
  • 创建了问题 9月18日

悬赏问题

  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条