當點擊按鈕時,執行槽函數,一般寫法爲:
self.ui.wind_bread.triggered.connect(self.controller.wind_bread)
其中 self.controller.wind_bread 是槽函數。
但是,如果需要給槽函數傳參怎麼辦?就比如下面,槽函數需要一個參數:append_info。動作觸發時,該怎麼傳遞參數給槽函數呢?
def wind_bread(self, append_info):
if self.dataCollectorModel.wind_bread():
append_info("一鍵防風成功")
else:
append_info("一鍵防風失敗,請重試", "red")
使用 partial 函數,即可傳遞參數給槽函數。
self.ui.wind_bread.triggered.connect(partial(self.controller.wind_bread, self.append_info))