Page 1 of 1
Виджет с прокруткой
PostPosted: 31 Mar 2016, 13:58
by zazaka
Какой виджет даст возможность прокручивать в нутри себя другие виджеты ??
наверно что то типа QSrcrollArea? использовать нужно или чтото есть ещё?
Re: Виджет с прокруткой
PostPosted: 31 Mar 2016, 17:38
by zazaka
я сделал вот так
- 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) сжимается и прокрутка не появляется ....
Re: Виджет с прокруткой
PostPosted: 01 Apr 2016, 06:25
by ArtMares
Вот мой код для виджета с прокруткой
- 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);
Re: Виджет с прокруткой
PostPosted: 02 Apr 2016, 14:28
by zazaka
спс!) всё плучилось )
правда ещё с оформлением размерами и стилями криво местами получается
Re: Виджет с прокруткой
PostPosted: 02 Apr 2016, 14:37
by ArtMares
Что бы у тебя корректно работало необходимо задавать высоту виджету, который содержит в себе кнопки и сам является дочерним элементом QScrollArea.
Если ты высоту не будешь задавать то у дочернего элемента высота будет равна высоте QScrollArea, из-за чего и происходит сжатие элементов
Re: Виджет с прокруткой
PostPosted: 02 Apr 2016, 14:49
by zazaka
я кажись разобрался, сейчас чуть причешу выложу новую версию проги.