Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Igors от Февраль 09, 2014, 11:51



Название: Размер c учетом скроллера
Отправлено: Igors от Февраль 09, 2014, 11:51
Добрый день

Есть QListWidget "в одну строку" (или в одну колонку). Как посчитать его высоту (или ширину) учитывая возможный скроллер? Полагаем что строка "на весь экран", т.е ее длина известна

Спасибо


Название: Re: Размер c учетом скроллера
Отправлено: Day от Февраль 09, 2014, 14:36
QStyle::pixelMetric(...)  Нет?


Название: Re: Размер c учетом скроллера
Отправлено: Igors от Февраль 10, 2014, 10:31
... но всё равно не то.
Да, не то. Там масса метриков + завязки на самом стиле. Ну ладно, допустим высоту (ширину) айтема я знаю - вот что со скроллом делать? Т.е. как определить что он будет - или подсесть на сигнал/событие? Т.к. руками это рассчитывать глуповато


Название: Re: Размер c учетом скроллера
Отправлено: carrygun от Февраль 10, 2014, 12:16
Может попробовать зацепиться за childEvent()? Потому как зарание узнать не получится, особенно если элементы будут добавляться по одному.
Ну и совсем плохой вариант - включить отображение скролла независимо от количества элементов.


Название: Re: Размер c учетом скроллера
Отправлено: Igors от Февраль 11, 2014, 13:34
Может попробовать зацепиться за childEvent()?
Не совсем, но верное направление. childEvent к растяжкам не имеет отношения. Сделал отловив QEvent::LayoutRequest - после выполнения этого события все размеры как на экране, дальше horizontalScrollBar() и.т.д.