Quantcast
Channel: Active questions tagged qtquick2 - Stack Overflow
Viewing all articles
Browse latest Browse all 107

How to create grouped/nested properties?

$
0
0

I am trying to do nested properties like 'font.family' or 'anchors.fill', but I cannot initialize them in normal way because it prints 'Cannot assign to non-existent property'. Instead I am forced to use Component.onCompleted method. What's wrong?

MyButtonStyling.qml:

import QtQml 2.1QtObject{    property QtObject background: QtObject    {        property color pressed: "#CCCCCC"        property color enabled: "#666666"        property color disabled: "#555555"    }}

main.qml:

import QtQuick 2.0Item{    width: 400    height: 300    MyButton    {        text: "TEST"        styling: MyButtonStyling        {            //background.enabled: "#1B2E0A" //Cannot assign to non-existent property "enabled"            Component.onCompleted:            {                background.enabled = "#1B2E0A" //Works            }        }    }}

MyButton.qml:

import QtQuick 2.0import QtQuick.Controls 1.0import QtQuick.Controls.Styles 1.0Button{    property QtObject styling: MyButtonStyling {}    implicitWidth: 80    implicitHeight: 80    style: ButtonStyle    {        background: Item        {            Rectangle            {                anchors.fill: parent                color: control.pressed ? styling.background.pressed : control.enabled ? styling.background.enabled : styling.background.disabled            }        }    }}

Viewing all articles
Browse latest Browse all 107

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>