2021年6月28日 星期一

在QT的connect傳入函數的參數

標題:在QT的connect傳入函數的參數

關鍵字:QT、connect、parameter

本篇文章網址:https://corettainformation.blogspot.com/2021/06/qtconnect.html


今天使用C++寫QT程式時,想要讓QT按下清單時可以執行showSecondary_Window函數,然後又要傳mosaic_Window的參數進去。


本來程式碼是長這個樣子的:

action = new QAction("馬賽克", NULL);

menu->addAction(action); 

connect(action, &QAction::triggered, this, &kaleido_painter::showSecondary_Window);

它可以呼叫showSecondary_Window函數,但是不能傳入任何參數。


怎麼辦呢?

只要把connect函數改成下方的格式就可以了:

connect(action, &QAction::triggered, this, [=]() {

kaleido_painter::showSecondary_Window(mosaic_Window);

});


這樣就能同時呼叫showSecondary_Window函數又能傳mosaic_Window的參數進去

沒有留言:

張貼留言

有興趣或有疑問的歡迎提問與交流喔!!!