PyQt5在已运行界面中通过Botton按钮触发添加新的Botton按钮

代码可直接运行

from PyQt5.QtWidgets import QWidget, QApplication, QPushButton, QFrame
import sys

class ui(QWidget):
    def __init__(self):
        super().__init__()
        # names = self.__dict__
        self.dict = {}
        self.add = QPushButton(self)
        self.add.setText('添加')
        self.add.setGeometry(50, 50, 100, 50)
        self.add.clicked.connect(self.BottonPressEvent)
        self.index = 0

    def show_ui(self):

        self.dict["botton"+str(self.index)] = QPushButton(self)
        self.dict["botton"+str(self.index)].setText("botton"+str(self.index))
        self.dict["botton"+str(self.index)].setGeometry(50, 100 + 50*self.index, 100, 50)
        return self.dict["botton"+str(self.index)]

    def BottonPressEvent(self): #键盘触发
        # print("l")
        self.show_ui().setVisible(True)
         # 只有设置为True 才能显示  之前默认都是显示的  但是在这添加就默认不显示了

        self.index += 1
        print('你是天才')   #验证事件是否触发


if __name__=='__main__':
    app = QApplication(sys.argv)
    u = ui()
    u.show()
    sys.exit(app.exec_())

成功界面

在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值