2013-04-11 4 views
0

Мой вопрос прост: как я могу установить QScrollBar в моей QScrollArea. Я тестировал много вещей, но ничего не работает ... Может быть, проблема заключается в установке QScrollArea в QTabWidget? Вот код:QScrollBar + QScrollAera в QTabWidget

void GamesWindow::createTabSucces() 
{ 
    std::string nameImg; 

    _succesPage = new QWidget(_tab); 
    _tab->addTab(_succesPage, "  Succes  "); 

    scrollArea = new QScrollArea(_succesPage); 
    scrollArea->setBackgroundRole(QPalette::Dark); 
    scrollArea->setFixedSize(500,500); 
    /* Integration of QScrollBar */ 
    for (int i = 0; i < 45; i++) 
    { 
     nameImg = "img/allAchiv/"; 
     nameImg += intToString(i + 1); 
     nameImg += ".jpg"; 
     _imgSucc[i] = new QLabel(scrollArea); 
     _imgSucc[i]->setPixmap(QPixmap(QString(nameImg.c_str()))); 
     _imgSucc[i]->setGeometry((14 + (85 * (i % 5))), 46 + ((i/5) * 85), 60, 60); 
    } 
} 

На самом деле, я добавлять изображения в закладке, где создается QScrollArea (как 8-9 линий картин), но только 5 видимы, остальные шкура, потому что они находятся в снизу, из определенной зоны.

Любая идея? Благодаря.

ответ

0

Я почти уверен, что вы не можете добавить прокрутку к виджету вкладки, но моя идея - просто попробовать сделать больше вкладок, которые можно показать, и посмотреть, появляется ли ползунок по умолчанию.

+0

Я не хочу добавлять свиток к моему виджету вкладки, но на scrollArea, который находится на виджетах вкладки. – Zat42

+0

Мой плохой я неправильно понял. Проверьте это QAbstractScrollArea :: horizontalScrollBarPolicy или QAbstractScrollArea :: verticalScrollBarPolicy. – Goran

1

Вы должны:

  • добавить макет на страницу (QVBoxLayout)
  • добавить область прокрутки этой страницы макета
  • добавить макет к viewport() виджета в области прокрутки (QVBoxLayout)
  • добавить свои QLabels к этому окна просмотра макета

Таким образом, вам не нужно будет для вызова setGeometry на каждой метке

 Смежные вопросы

  • Нет связанных вопросов^_^