Russian Qt Forum
Ноябрь 27, 2024, 09:43
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Пользовательский интерфейс (GUI)
>
Избавиться от вертикальной прокрутки в QToolBox
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Избавиться от вертикальной прокрутки в QToolBox (Прочитано 5258 раз)
Joss
Гость
Избавиться от вертикальной прокрутки в QToolBox
«
:
Май 19, 2010, 02:12 »
Я голову уже сломал,
делаю форму в дизайнере, добавляю туда Tool Box и начинаю в нем по вертикали добавлять кнопки. Ставлю по вертикали SizePolicy: MinimumExpanding. Все вроде хорошо, при ресайзе окна, оно ресайзится до тех пор, пока все кнопки могут быть отображены на экране.
Начинаю добавлять кнопки и в какой-то момент в Tool Box при ресайзе появляется вертикальная прокрутка. Как от нее избавиться?
Поместил иллюстрацию и ui.
Подскажите пожалуйста, буду очень признателен, спасибо!
Записан
crossly
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #1 :
Май 19, 2010, 08:56 »
Код:
void setHorizontalScrollBarPolicy ( Qt::ScrollBarPolicy )
Записан
alexman
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #2 :
Май 19, 2010, 14:13 »
Цитата: crossly от Май 19, 2010, 08:56
Код:
void setHorizontalScrollBarPolicy ( Qt::ScrollBarPolicy )
Откуда и для чего вызывать?
Записан
Joss
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #3 :
Май 19, 2010, 14:30 »
: Откуда и для чего вызывать?
Да, и мне хотелось бы понять.
Яснее, на всякий случай, сформулирую проблему - при ресайзе окна я хотел бы, чтобы оно не ресайзилось в сторону уменьшения дальше той границы, за которой возникает необходимость в скрулинге содержимого Tool Box.
Вообще мне непонятно, почему при каком-то количестве баттонов на тулбоксе прокрутки не возникает, а в какой-то момент, после добавления еще нескольких баттонов, они начинаются скрулится при ресайзе.
Записан
crossly
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #4 :
Май 19, 2010, 14:53 »
действительно не к чему.... никак....
Записан
Joss
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #5 :
Май 19, 2010, 15:21 »
Цитата: crossly от Май 19, 2010, 14:53
действительно не к чему.... никак....
А можно поподробнее, если не сложно?
setVerticalScrollBarPolicy это метод QAbstractScrollArea и как его использовать в QToolBox?
Записан
alexman
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #6 :
Май 19, 2010, 15:34 »
Цитата: Joss от Май 19, 2010, 15:21
Цитата: crossly от Май 19, 2010, 14:53
действительно не к чему.... никак....
А можно поподробнее, если не сложно?
setVerticalScrollBarPolicy это метод QAbstractScrollArea и как его использовать в QToolBox?
никак
Записан
crossly
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #7 :
Май 19, 2010, 15:41 »
можно получить доступ к виджету в scrollarea но нельзя получить доступ к самой области прокрутки....
Записан
Joss
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #8 :
Май 19, 2010, 17:09 »
Господа,
ну видимо я туплю, объясните пожалуйста:
1) насколько я понимаю, отключение скрула ничего не даст, просто часть элементов внутри тулбокса будут перекрываться при резайзе. Т.е. цель именно в том, чтобы не дать окну ресайзится в сторону уменьшения свыше определенной границы. Я понимаю, что можно тупо прописать минимальную высоту окна, но как-то это глупо.
2) Почему не отрабатывает MinimumExpanding? Т.е. это срабатывает до какого-то момента, например, если оставить 10 кнопок внутри тулбокса, все отлично ресайз происходит именно до момента когда все компоненты тулбокса еще помещаются в окне, но стоит добавить еще одну кнопку - все, поплыли, получаем скрулинг при ресайзе окна.
Мне, как новичку, казалось, что менеджеры компоновки должны на основе размеров элементов (кнопок) определять требуемый SizeHint, который и будет учитываться одновременно со свойством MinimumExpanding. И почему это срабатывает с 10 кнопками и уже не срабатывает с 11 и более?
Записан
Dragon
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #9 :
Май 24, 2010, 09:30 »
Если я правильно понял... то отключи возможность менять длину окна. Установи фиксированный размер
Записан
Joss
Гость
Re: Избавиться от вертикальной прокрутки в QToolBox
«
Ответ #10 :
Май 24, 2010, 10:48 »
Цитата: Dragon от Май 24, 2010, 09:30
Если я правильно понял... то отключи возможность менять длину окна. Установи фиксированный размер
Правильно, но это тупиковое решение, тем более, что будет на других платформах, с другим размером шрифтов, с другим разрешением?
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...