Russian Qt Forum

Qt => Общие вопросы => Тема начата: chron1c от Июль 04, 2012, 16:01



Название: "Слои" из виджетов.
Отправлено: chron1c от Июль 04, 2012, 16:01
Здравствуйте.
Возник вопрос.
Я использую виджеты как слои для отображения некой графической информации. Очерёдность наложения задаю просто порядком инциализации виджета.
Как-нибудь можно сделать это иначе, динамически?
Наслаиваю виджеты просто через setGeometry();


Название: Re: "Слои" из виджетов.
Отправлено: pastor от Июль 04, 2012, 16:28
Если я правильно понял, то взгляни на QStackedLayout, QStackedWidget


Название: Re: "Слои" из виджетов.
Отправлено: chron1c от Июль 04, 2012, 16:45
Не совсем то.
У меня как слои в фотошопе, а QStackedWidget хранит страницы (что-то типа Win+Tab в Винде).
Мне нужно задать очерёдность наслоения.
Чтобы рисунок с нижнего уровня перекрывался рисунком с верхнего, но неперекрытые участки также отображались.


Название: Re: "Слои" из виджетов.
Отправлено: vregess от Июль 04, 2012, 21:56
Готового ничего нет. Но.
Глянь QStackedLayout (обратить внимание на QStackedLayout::StackingMode) и исходники QStackedWidget (класс очень простой).


Название: Re: "Слои" из виджетов.
Отправлено: lighting от Июль 05, 2012, 09:09
QWidget::stackUnder( QWidget * w ) ну и raise и lower до кучи.
Но есть мнение что свой виджет с переопределенным painevent будет правильнее.