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

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日

悬赏问题

  • ¥500 亚马逊 COOKIE我如何才能实现 登录一个亚马逊账户 下发新 COOKIE ..我使用下发新COOKIE 导入ADS 指纹浏览器登录,我把账户密码 修改过后,原来下发新COOKIE 不会失效的方式
  • ¥20 玩游戏gpu和cpu利用率特别低,玩游戏卡顿
  • ¥25 oracle中的正则匹配
  • ¥15 关于#vscode#的问题:把软件卸载不会再出现蓝屏
  • ¥15 vimplus出现的错误
  • ¥15 usb无线网卡转typec口
  • ¥30 怎么使用AVL fire ESE软件自带的优化模式来优化设计Soot和NOx?
  • ¥15 Ubuntu20.04.4.LTS系统如何下载安装VirtualBox虚拟机?
  • ¥15 如何用QDomDocument读取内容为空格的xml数据
  • ¥15 请阅读下面代码,帮我修改下代码