Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Hrundel от Февраль 23, 2013, 02:03



Название: Позиционирование виджетов с флагом Qt::Dialog по слоям.
Отправлено: Hrundel от Февраль 23, 2013, 02:03
Уважаемые знатоки   прошу подсказки, на возможно тривиальный вопрос.

Каникулы после сессии в самом разгаре, решил продолжить проект, который начал в прошлом семестре. Доставляет много удовольствия. Пока продолжаю работать над GUI  и его функциональностью.

Сейчас добавлены несколько панелей в инструментарий, и написано свое диалоговое окно. Каждая панель инструментария является одним отдельным виджетом с флагом Qt::Dialog. Данный флаг применен по причине перерисовки поля QGLWidget. Таким образом не возникает проблем в буфере. Все панели инструментов собраны в виджете(классе) tools а панели диалогов в виджете(классе) dialogs. Теперь происходит маленькая неприятность при активации панелей. Если диалог лежит поверху какой либо панели, то панель при клике перекрывает диалог очень тупо как на приложенных скринах, а хотелось бы, чтобы одновременно все видимые панели были поверх диалога.

Тут то и вопрос   :  а как это сделать ? Попробовал применить raise() к виджету tools, не помогает. Где-то мне логического хода не хватает.

Заранее благодарю за разъяснения.

(http://i51.fastpic.ru/big/2013/0222/cd/6e8a7ef07e10b15aece6b5a613c806cd.jpg)
(http://i52.fastpic.ru/big/2013/0222/82/b83a2da4ad09670b31e25c3048fb3182.jpg)


Название: Re: Позиционирование виджетов с флагом Qt::Dialog по слоям.
Отправлено: GreatSnake от Февраль 23, 2013, 11:54
Код
C++ (Qt)
void QGraphicsItem::setZValue ( qreal z )