Russian Qt Forum

Qt => Qt Quick => Тема начата: warlock от Май 05, 2011, 16:02



Название: Модальное окно на QML [РЕШЕНО]
Отправлено: warlock от Май 05, 2011, 16:02
Есть идеи как можно реализовать?
Затемнить фон, отцентрировать блок, занести содержимое нет проблем, но как заблокировать все за его пределами?

Я специально проверял, ставил Flickable элемент, и поверх него запускал мое псевдомодальное окно. При манипуляциях в области Flickable действия происходят.


Название: Re: Модальное окно на QML
Отправлено: twp от Май 06, 2011, 19:45
я делал что-то типа такого с эффектом затемнения, происходит блокировка только парента
Код:
Rectangle {
    color: Qt.rgba(0.0, 0.0, 0.0, 0.5)
    anchors.fill: parent

    MouseArea { // for blocking all underlayers
        anchors.fill: parent
    }
    // тут определяешь само окно
}


Название: Re: Модальное окно на QML
Отправлено: warlock от Май 06, 2011, 20:27
Гениальное решение, twp , спасибо!  :)


Название: Re: Модальное окно на QML [РЕШЕНО]
Отправлено: warlock от Май 22, 2011, 22:52
Только сейчас заметил, что на клики мыши не реагирует, а колесико все еще "двигает" все  :)


Название: Re: Модальное окно на QML [РЕШЕНО]
Отправлено: twp от Май 23, 2011, 12:41
нужно добавить в MouseArea:
Код:
    acceptedButtons: Qt.LeftButton | Qt.RightButton | Qt.MiddleButton
ведь по умолчанию ловится только Qt.LeftButton