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

说多了都是泪,我想在原有的界面中,通过事件触发添加一个按钮,查了几个小时都没有我想要的,全是点击按钮创建一个新的窗口,结果我突然想到以前Java的个语句,结果。。。成功了!!!所以写下此篇,希望能帮到正在苦恼的你。
上代码:

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

class ui(QWidget):
    def __init__(self):
        super().__init__()
        self.show_ui()


    def show_ui(self, y = 50):
        self.pu = QPushButton(self)
        self.pu.setText('sdf')
        self.pu.setGeometry(50, y, 100, 50)


    def keyPressEvent(self, QKeyEvent): #键盘触发
        self.show_ui(70)
        self.pu.setVisible(True) # 只有设置为True 才能显示  之前默认都是显示的  但是在这添加就默认不显示了
        print('sdf')   #验证事件是否触发


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

你可能感兴趣的:(PyQt5,界面)