c++ - QTabWidget tab displays nothing in one of the tabs -


i trying create gui has qtabwidget multiple tabs. preliminary test have created 1 has 2 tabs using same layouts. first tab (page 1) blank second 1 shows qtableview created. both tabs created exact same way, yet perform differently. know why first 1 blank...?

i noticed if comment out line int8window->setlayout(_layout);. page 1 shows proper layout , second tab blank time...

here code gui:

    // main window , layout     qwidget* mainwindow = new qwidget;     qvboxlayout *mainlayout = new qvboxlayout;      // tab widget     qtabwidget* tabwidget = new qtabwidget;      // pages in tab widget     qwidget* uint8window = new qwidget;     uint8window->setwindowtitle(qstring("page 1"));     qwidget* int8window = new qwidget;     int8window->setwindowtitle(qstring("page 2"));      qtableview* tableview = new qtableview;     qstandarditemmodel* model = new qstandarditemmodel(5, 5);     (int row = 0; row < 5; ++row) {         model->setitem(row, 0, new qstandarditem("3"));         model->setitem(row, 1, new qstandarditem(5));         model->setitem(row, 2, new qstandarditem(2));         model->setitem(row, 3, new qstandarditem(1));         model->setitem(row, 4, new qstandarditem(5));     }      tableview->setmodel(model);      // setting tab page layouts     _layout = new qvboxlayout;     _layout->addwidget(tableview);      uint8window->setlayout(_layout);     int8window->setlayout(_layout);      // add pages tab widget     tabwidget->addtab(uint8window, "page 1");     tabwidget->addtab(int8window, "page 2");      // add tab widget main layout , show     mainlayout->addwidget(tabwidget);     mainwindow->setlayout(mainlayout);     mainwindow->show(); 

read logs! i'm sure have respective warning.

you assigning same layout 2 different widgets. once layout assigned widget, owned widget forever.

you need create separate layout each widget.

i recommend split onto couple methods. 1 creating widget page (you can use couple times). other creating data model, , other composing tab widget.

please remember memory management! best approach set parent during construction (as parameter of constructor). have leak in data model.


Comments

Popular posts from this blog

java - BeanIO write annotated class to fixedlength -

Using Java 8 lambdas/transformations to combine and flatten two Maps -

How to connect android app to App engine -