QML Styling/it: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
[[QmlStyling|English]] [[QmlStyling_Spanish|Spanish]] '''Italiano''' [[QmlStyling_Hungarian|Magyar]] | [[QmlStyling|English]] [[QmlStyling_Spanish|Spanish]] '''Italiano''' [[QmlStyling_Hungarian|Magyar]] | ||
[toc align_right="yes" depth="3"] | |||
= Abbellimenti in QML = | = Abbellimenti in QML = | ||
Line 7: | Line 8: | ||
== Approccio 1: Componente Personalizzato == | == Approccio 1: Componente Personalizzato == | ||
QML supporta la definizione di propri | QML supporta la definizione di propri "componenti personalizzati":http://doc.qt.nokia.com/4.7/qml-extending-types.html#defining-new-components. Di seguito, creiamo un componente personalizzato '''TitleText''' che possiamo utilizzare ogni volta che la nostra interfaccia utente richiede un titolo. Se vogliamo cambiare l'aspetto di tutti i titoli della nostra interfaccia utente, possiamo editare ''TitleText.qml'', e le modifiche si applicheranno ovunque esso venga utilizzato. | ||
<code>// TitleText.qml | <code>// TitleText.qml | ||
Text { | |||
horizontalAlignment: Text.AlignHCenter | |||
font.pixelSize: 50 | |||
color: "green" | |||
} | |||
// in uso | // in uso | ||
TitleText { | |||
text: "Title 1" | |||
}</code> | |||
== Approccio 2: Oggetto di stile == | == Approccio 2: Oggetto di stile == | ||
Line 17: | Line 26: | ||
In questo approccio definiamo un oggetto '''Style''' che contenga la definizione delle proprietà dello stile. Questo oggetto è istanziato nel componente principale, per cui è disponibile in tutta l'applicazione. | In questo approccio definiamo un oggetto '''Style''' che contenga la definizione delle proprietà dello stile. Questo oggetto è istanziato nel componente principale, per cui è disponibile in tutta l'applicazione. | ||
<code>// Style.qml | <code>// Style.qml | ||
QtObject { | |||
property int textSize: 20 | |||
property color textColor: "green" | |||
} | |||
// componente principale | // componente principale | ||
Rectangle { | |||
… | |||
Style { id: style } | |||
… | |||
} | |||
// in use | // in use | ||
Text { | |||
font.pixelSize: style.textSize | |||
color: style.textColor | |||
text: "Hello World" | |||
}</code> | |||
== Approccio 3: Ibrido (Oggetto di stile + Componente personalizzato) == | == Approccio 3: Ibrido (Oggetto di stile + Componente personalizzato) == | ||
Line 27: | Line 50: | ||
In questo approccio, abbiamo un oggetto '''Style''' che è usato in un componente personalizzato. | In questo approccio, abbiamo un oggetto '''Style''' che è usato in un componente personalizzato. | ||
<code>// Style.qml | <code>// Style.qml | ||
QtObject { | |||
property int titleAlignment: Text.AlignHCenter | |||
property int titleFontSize: 50 | |||
property color titleColor: "green" | |||
} | |||
// componente principale | // componente principale | ||
Rectangle { | |||
… | |||
Style { id: style } | |||
… | |||
} | |||
// TitleText.qml | // TitleText.qml | ||
Text { | |||
horizontalAlignment: style.titleAlignment | |||
font.pixelSize: style.titleFontSize | |||
color: style.titleColor | |||
} | |||
// in uso | // in uso | ||
TitleText { | |||
text: "Title 1" | |||
}</code> |
Revision as of 13:00, 25 February 2015
English Spanish Italiano Magyar [toc align_right="yes" depth="3"]
Abbellimenti in QML
QML fornisce diversi meccanismi per l'abbellimento di un'interfaccia utente. Qui di seguito sono elencati tre approcci comuni.
Approccio 1: Componente Personalizzato
QML supporta la definizione di propri "componenti personalizzati":http://doc.qt.nokia.com/4.7/qml-extending-types.html#defining-new-components. Di seguito, creiamo un componente personalizzato TitleText che possiamo utilizzare ogni volta che la nostra interfaccia utente richiede un titolo. Se vogliamo cambiare l'aspetto di tutti i titoli della nostra interfaccia utente, possiamo editare TitleText.qml, e le modifiche si applicheranno ovunque esso venga utilizzato.
// TitleText.qml
Text {
horizontalAlignment: Text.AlignHCenter
font.pixelSize: 50
color: "green"
}
// in uso
TitleText {
text: "Title 1"
}
Approccio 2: Oggetto di stile
In questo approccio definiamo un oggetto Style che contenga la definizione delle proprietà dello stile. Questo oggetto è istanziato nel componente principale, per cui è disponibile in tutta l'applicazione.
// Style.qml
QtObject {
property int textSize: 20
property color textColor: "green"
}
// componente principale
Rectangle {
…
Style { id: style }
…
}
// in use
Text {
font.pixelSize: style.textSize
color: style.textColor
text: "Hello World"
}
Approccio 3: Ibrido (Oggetto di stile + Componente personalizzato)
In questo approccio, abbiamo un oggetto Style che è usato in un componente personalizzato.
// Style.qml
QtObject {
property int titleAlignment: Text.AlignHCenter
property int titleFontSize: 50
property color titleColor: "green"
}
// componente principale
Rectangle {
…
Style { id: style }
…
}
// TitleText.qml
Text {
horizontalAlignment: style.titleAlignment
font.pixelSize: style.titleFontSize
color: style.titleColor
}
// in uso
TitleText {
text: "Title 1"
}