Виджет с прокруткой

вопросы по созданию программ с использованием возможностей библиотеки PHPQt5

Moderator: ArtMares

zazaka
User avatar
Ответственный глюкогенератор
 
Posts: 98
Какой виджет даст возможность прокручивать в нутри себя другие виджеты ??
наверно что то типа QSrcrollArea? использовать нужно или чтото есть ещё?
Унабле то лоад дынамиц либрары

zazaka
User avatar
Ответственный глюкогенератор
 
Posts: 98
я сделал вот так
Code:
        $scrcroll = new QScrollArea();
 $scrcroll->layout = new QVBoxLayout();//вертикальная компоновка
 $scrcroll->layout->addWidget($this->page_L);
 
 

        /// Сплитер для изменения размера полей левого и правого
        $split = new QSplitter();
        
        $split->addWidget($scrcroll);
        $split->addWidget($this->page_R);

        $this->centralWidget = $split;

Но поле с менюшками (page_L) сжимается и прокрутка не появляется ....
Унабле то лоад дынамиц либрары

ArtMares
User avatar
 
Posts: 72
Location: Москва
Вот мой код для виджета с прокруткой
Code:
        /** Создаем QScrollArea для фрейма проектов */
        $this->Scroll = new QScrollArea($this);

        /** Задаем имя для QScrollArea */
        $this->Scroll->objectName = 'ScrollProjects';

        /** Запрещаем отображение горизонтального скрола */
        $this->Scroll->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);

        /** Создаем QFrame для списка всех когда либо открытых проектов */
        $this->Projects = new QFrame($this);

        /** Задаем имя для QFrame */
        $this->Projects->objectName = 'FrameProjects';

        /** Задаем минимальную и максимальную ширину QFrame */
        $this->Projects->setMinimumWidth(288);
        $this->Projects->setMaximumWidth(300);

        /** Создаем слой для QFrame */
        $this->Projects->layout = new QVBoxLayout;

        /** Запускаем обновление списка открытых проектов */
        $this->controller->updateProjectsList($this->Projects);

        /** Добавляем QFrame списка проектов в QScrollArea */
        $this->Scroll->setWidget($this->Projects);

        /** Добавялем QScrollArea в основное окно */
        $this->layout->addWidget($this->Scroll);
PQStudio Development Progress: 75%
Version: 0.2

zazaka
User avatar
Ответственный глюкогенератор
 
Posts: 98
спс!)  всё плучилось )
правда ещё с оформлением размерами и стилями криво местами получается
Last edited by zazaka on 02 Apr 2016, 14:50, edited 2 times in total.
Унабле то лоад дынамиц либрары

ArtMares
User avatar
 
Posts: 72
Location: Москва
Что бы у тебя корректно работало необходимо задавать высоту виджету, который содержит в себе кнопки и сам является дочерним элементом QScrollArea.
Если ты высоту не будешь задавать то у дочернего элемента высота будет равна высоте QScrollArea, из-за чего и происходит сжатие элементов
PQStudio Development Progress: 75%
Version: 0.2

zazaka
User avatar
Ответственный глюкогенератор
 
Posts: 98
я кажись разобрался, сейчас чуть причешу выложу новую версию проги.
Унабле то лоад дынамиц либрары


Вернуться в Вопрошайка

Who is online
Users browsing this forum: No registered users and 6 guests