Russian Qt Forum

Qt => Вопросы новичков => Тема начата: Crazy Sage от Октябрь 25, 2012, 06:51



Название: Прокрутка QScrollArea к виджету
Отправлено: Crazy Sage от Октябрь 25, 2012, 06:51
Есть QScrollArea, на форме в дизайнере
Код:
    <item>
     <widget class="QScrollArea" name="previewList">
      <widget class="QWidget" name="scrollAreaWidgetContents">
       <layout class="QVBoxLayout" name="buttonsLayout">
        <item>
         <spacer name="verticalSpacer_5">
          <property name="orientation">
           <enum>Qt::Vertical</enum>
          </property>
         </spacer>
        </item>
       </layout>
      </widget>
     </widget>
    </item>

В него по ходу работы программы добавляются кнопки
Код:
QToolButton* btn = new QToolButton(ui.previewList->widget());
_buttons.push_back(btn);

При попытке прокрутить к той или иной кнопке с помощью
ui.previewList->ensureWidgetVisible(_buttons[num]);
ничего не происходит.
Что я делаю не так?
В качестве предка для кнопки пытался ставить и сам previewList, и scrollAreaWidgetContents - эффекта ноль


Название: Re: Прокрутка QScrollArea к виджету
Отправлено: mutineer от Октябрь 25, 2012, 08:48
Может QVBoxLayout убрать? Разве кнопки попадают в него при таком создании?


Название: Re: Прокрутка QScrollArea к виджету
Отправлено: Crazy Sage от Октябрь 25, 2012, 08:51
Там есть еще строчка добавления в лэйаут
ui.buttonsLayout->insertWidget(-2,btn);
чтобы перед спэйсером вставлялись