例:在界面上已有的容器QFrame控件frameLeft中動態添加控件(QPushButton),並給該按鈕添加響應函數(Lambda表達式)
動態地在已有的容器(如QFrame)中添加控件,如QPushButton。
第1步,獲取容器的佈局(layout)
frameLayout = frameLeft.layout()
第2步,創建控件QPushButton
#爲了區別對待各個btn,給其指定一個數據 num += 1 btn = QPushButton(f"btn-{num}",frameLeft) btn.num = num btn.clicked.connect(lambda :QMessageBox.about(frameLeft,"title",f"btn-{btn.num} clicked")) frameLayout.addWidget(btn)