QML Styling/it: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
(Remove non-functioning "toc" command)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[QmlStyling|English]] [[QmlStyling_Spanish|Spanish]] '''Italiano''' [[QmlStyling_Hungarian|Magyar]]<br />[toc align_right=&quot;yes&amp;quot; depth=&quot;3&amp;quot;]
{{Cleanup | reason=Auto-imported from ExpressionEngine.}}
 
[[QmlStyling|English]] [[QmlStyling_Spanish|Spanish]] '''Italiano''' [[QmlStyling_Hungarian|Magyar]]


= Abbellimenti in QML =
= Abbellimenti in QML =
Line 7: Line 9:
== Approccio 1: Componente Personalizzato ==
== Approccio 1: Componente Personalizzato ==


QML supporta la definizione di propri &quot;componenti personalizzati&amp;quot;: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.
QML supporta la definizione di propri [http://doc.qt.nokia.com/4.7/qml-extending-types.html#defining-new-components componenti personalizzati]. 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<br />Text {<br /> horizontalAlignment: Text.AlignHCenter<br /> font.pixelSize: 50<br /> color: &quot;green&amp;quot;<br />}
<code>// TitleText.qml
Text {
horizontalAlignment: Text.AlignHCenter
font.pixelSize: 50
color: "green"
}


// in uso<br />TitleText {<br /> text: &quot;Title 1&amp;quot;<br />}</code>
// in uso
TitleText {
text: "Title 1"
}</code>


== Approccio 2: Oggetto di stile ==
== Approccio 2: Oggetto di stile ==
Line 17: Line 27:
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<br />QtObject {<br /> property int textSize: 20<br /> property color textColor: &quot;green&amp;quot;<br />}
<code>// Style.qml
QtObject {
property int textSize: 20
property color textColor: "green"
}


// componente principale<br />Rectangle {<br /> <br /> Style { id: style }<br /> <br />}
// componente principale
Rectangle {
Style { id: style }
}


// in use<br />Text {<br /> font.pixelSize: style.textSize<br /> color: style.textColor<br /> text: &quot;Hello World&amp;quot;<br />}</code>
// 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 51:
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<br />QtObject {<br /> property int titleAlignment: Text.AlignHCenter<br /> property int titleFontSize: 50<br /> property color titleColor: &quot;green&amp;quot;<br />}
<code>// Style.qml
QtObject {
property int titleAlignment: Text.AlignHCenter
property int titleFontSize: 50
property color titleColor: "green"
}


// componente principale<br />Rectangle {<br /> <br /> Style { id: style }<br /> <br />}
// componente principale
Rectangle {
Style { id: style }
}


// TitleText.qml<br />Text {<br /> horizontalAlignment: style.titleAlignment<br /> font.pixelSize: style.titleFontSize<br /> color: style.titleColor<br />}
// TitleText.qml
Text {
horizontalAlignment: style.titleAlignment
font.pixelSize: style.titleFontSize
color: style.titleColor
}


// in uso<br />TitleText {<br /> text: &quot;Title 1&amp;quot;<br />}</code>
// in uso
TitleText {
text: "Title 1"
}</code>

Latest revision as of 12:27, 17 April 2015

This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

English Spanish Italiano Magyar

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. 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"
}