Название: [РЕШЕНО] Как узнать когда в QScrollArea не нужны скроллбары Отправлено: gil9red от Сентябрь 06, 2012, 21:04 Здравствуйте! :)
Решил написать для своего проекта виджет-контейнер :) Выглядит просто: Есть QScrollArea на ней располагается визуальное Есть ползунок QSlider с 3 состояниями: движение вверх, остановка и движение вниз а перемещаются виджеты засунутые в QScrollArea добавил QTimer, и ура! все само перемещается только двигай ползунком или вертикальным скроллом QScrollArea вот только ползунок надо бы скрывать вместе с вертикальным скроллом QScrollArea, если все виджеты в QScrollArea видны Сам вопрос: и как узнать когда в QScrollArea не нужны скроллбары? и можно пример этого? :) Название: Re: Как узнать когда в QScrollArea не нужны скроллбары Отправлено: mutineer от Сентябрь 06, 2012, 23:58 Ну например спросить видимость у скроллбаров
Название: Re: Как узнать когда в QScrollArea не нужны скроллбары Отправлено: gil9red от Сентябрь 07, 2012, 06:25 При ресайз евенте?
Название: Re: Как узнать когда в QScrollArea не нужны скроллбары Отправлено: GreatSnake от Сентябрь 07, 2012, 08:30 Ну например спросить видимость у скроллбаров И как это соотносится с вопросом ???Просто не получится узнать. Нужно самому просчитывать :( А чем не устроило Код ? Название: Re: Как узнать когда в QScrollArea не нужны скроллбары Отправлено: gil9red от Сентябрь 07, 2012, 08:47 Тем что при исчезновении вертикального скроллбара нужно скрыть виджет не относящийся к QScrollArea, а именно QSlider :)
Название: Re: Как узнать когда в QScrollArea не нужны скроллбары Отправлено: GreatSnake от Сентябрь 07, 2012, 10:33 Тем что при исчезновении вертикального скроллбара нужно скрыть виджет не относящийся к QScrollArea, а именно QSlider :) Ну тогда можно следить за видимостью этого вертикального скроллбара через eventFilter().Название: Re: Как узнать когда в QScrollArea не нужны скроллбары Отправлено: mutineer от Сентябрь 07, 2012, 10:36 Тем что при исчезновении вертикального скроллбара нужно скрыть виджет не относящийся к QScrollArea, а именно QSlider :) Ну тогда можно следить за видимостью этого вертикального скроллбара через eventFilter().Вот именно так мой ответ и соотносится с вопросом Название: Re: Как узнать когда в QScrollArea не нужны скроллбары Отправлено: gil9red от Сентябрь 07, 2012, 16:05 Тем что при исчезновении вертикального скроллбара нужно скрыть виджет не относящийся к QScrollArea, а именно QSlider :) Ну тогда можно следить за видимостью этого вертикального скроллбара через eventFilter().А можно пример использования фильтра событий для слежения видимости? :) никогда с ним не работал, и в таких случаях обходился наследованием с переопределением и сигналами :) Название: Re: Как узнать когда в QScrollArea не нужны скроллбары Отправлено: gil9red от Сентябрь 07, 2012, 16:50 Ну вроде правильно сделал :)
по крайней мере работает :) фильтр: Код: bool Widget::eventFilter(QObject *object, QEvent *event) Поправьте, если получился быдлокод :) Название: Re: Как узнать когда в QScrollArea не нужны скроллбары Отправлено: gil9red от Сентябрь 07, 2012, 16:53 Какой же eventFilter удобный и простой)))
Скинул тестовый-рабочий проект, которые описывал в начале темы, может кому то и пригодится :) |