推 dvd955363:不是用這個方法 可是問題已經解決 謝謝 11/05 01:57
※ 引述《dvd955363 (不爽嫑看)》之銘言:
: 想請問一下用QT designer
: 編輯Stacked Widget功能頁面時
: 要怎麼設定Signal/Slot才能順利的切換頁面
: 目前有發現可能可以用SetCurrentWidget()來切換
: 可是如果Slot選擇SetCurrentWidget()那Signal就沒辦法選擇觸發事件
: 反過來如果先選擇觸發事件那SetCurrentWidget()就會從選項消失
: 我知道有內建的箭頭可以點
: 可是我想做的是點button切換指定頁面的功能
: 麻煩有經驗的前輩指點迷津
: 謝謝
那你就做個 wrapper 吧
connect( button1, SIGNAL(clicked()), this, SLOT(wrapper1()) );
void wrapper1() {
this->sw->setCurrentWidget( stack1 );
}
如果 button 很多的話
也可以弄個 QSignalMapper :
mapper = new QSignalMapper( this );
foreach( QPushButton * b , buttons ) {
connect( b, SIGNAL(clicked()), mapper, SLOT(map()) );
mapper->setMapping( b, stackWidget );
}
connect( mapper, SIGNAL(mapped(QWidget *)),
sw, SLOT(setCurrentWidget(QWidget *)) );
--
自High筆記(半荒廢)
http://legnaleurc.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.205.248.119