0
這很奇怪。使用此代碼 ,我試圖將標籤添加到QTabWidget:Tab沒有被添加到QTabWidget
void SideWidget::changePanel(SearchablePanel* panel){
ui->nextButton->setEnabled(false);
cout << pointer;
widgetHistory[++pointer] = panel;
QWidget* widget = panel->getWidget();
cout << panel->id;
MainWindow::main->addTab(widget, "nT");
QTextEdit* thing = new QTextEdit("Test");
MainWindow::main->addTab(thing, "tabqx");
this->internalChange(panel);
}
而且internalChange:
void SideWidget::internalChange(SearchablePanel *panel){
cout << "internale change, "+panel->id;
ui->scrollPanel->setWidget(panel->getWidget());
ui->prevButton->setEnabled(true);
}
現在,當我添加標籤「tabqx」它的工作原理,而當我設scrollPanel的小部件可以工作到panel->getWidget()
。但是,當我嘗試添加標籤「nT」時,它不起作用。我很困擾。我應該注意到,panel->getWidget()
返回QWidget
,正如所料。在這個例子中,它會返回一個QTextEdit
。另外,MainWindow::main
是一個靜態QTabWidget
。
所以我的問題是,爲什麼沒有添加標籤「nT」?
哇...我不知道一個QWidget只能在一個地方!謝謝。 – MirroredFate