Пользовательский заголовок в Qml - PullRequest
0 голосов
/ 19 мая 2019

Я хочу создать заголовок в стиле metro (что-то вроде "mahapps.metro") для приложения qml с липкими краями и пользовательскими кнопками и фоном, я уже создал нечто вроде этого:

import QtQuick.Controls.Universal 2.12
ApplicationWindow{
    id: window
    width: Screen.width * 5/6
    height: Screen.height * 5/6
    flags:Qt.Window | Qt.CustomizeWindowHint
    menuBar : Rectangle{
        width: parent.width
        height: 35
        color: Universal.color(Universal.Emerald)
        Row{
            anchors.right: parent.right
            anchors.verticalCenter: parent.verticalCenter
            spacing: 5
            layoutDirection: Qt.RightToLeft
            CustomButton{
                //close
            }
            CustomButton{
                //maximize
            }
            CustomButton{
                //minimize
            }
        }
        MouseArea{
            //deal with dragging
            anchors.fill: parent
            property variant clickPos: "1,1"
            onPressed: {
                if(window.visibility != 4 && window.visibility != 5)
                    clickPos  = Qt.point(mouse.x,mouse.y)
            }
            onDoubleClicked: {
                var item = window.Maximized;
                if(window.visibility != 4 && window.visibility != 5){
                    window.showMaximized()
                }
                else{
                    window.showNormal()
                }
            }

            onPositionChanged: {
                if(window.visibility != 4 && window.visibility != 5){
                    var delta = Qt.point(mouse.x-clickPos.x, mouse.y-clickPos.y)
                    window.x += delta.x;
                    window.y += delta.y;
                }
            }
        }
    }
}

iУ меня есть несколько вопросов:

  1. как я могу реализовать липкие края в QML или QT?
  2. есть ли какая-нибудь библиотека, которая уже сделала это?
  3. могу ли я сделать собственную строку заголовка, соответствующую моим требованиям, с QTitleBar?
  4. существует ли какое-либо приложение с открытым исходным кодом с пользовательской строкой заголовка?
  5. Имеет ли дизайн материала какой-либо стиль для окон, по крайней мере, помогает мне в этом?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...