QML Styling/bg: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
(Remove non-functioning "toc" command)
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
'''Български''' [[QmlStyling|English]] [[QmlStyling Spanish|Spanish]] [[QmlStyling Italian|Italian]] [[QmlStyling Hungarian|Magyar]] [http://qt-devnet.developpez.com/tutoriels/qt-quick/qml/style/ French] ''[qt-devnet.developpez.com]''<br />
{{Cleanup | reason=Auto-imported from ExpressionEngine.}}


=Създаване на стилове в <span class="caps">QML</span>=
'''Български''' [[QmlStyling|English]] [[QmlStyling_Spanish|Spanish]] [[QmlStyling_Italian|Italian]] [[QmlStyling_Hungarian|Magyar]] [http://qt-devnet.developpez.com/tutoriels/qt-quick/qml/style/ French]


<span class="caps">QML</span> предоставя няколко механизъма за стилизиране на потребителския интерфейс. Представяме ви три често срещани подхода.
= Създаване на стилове в QML =


==Подход 1: Собствен компонент==
QML предоставя няколко механизъма за стилизиране на потребителския интерфейс. Представяме ви три често срещани подхода.


<span class="caps">QML</span> поддържа дефинирането на [http://doc.qt.nokia.com/4.7/qml-extending-types.html#defining-new-components собствени компоненти] ''[doc.qt.nokia.com]''. По-долу, ние създаваме собственият компонент '''TitleText''', който можем после да използваме в нашата програма, когато искаме заглавен текст. Ако изкаме да променим външният вид на всички заглавни текстове в нашият интерфейс, можем просто да редактираме ''TitleText.qml'' и промените ще се отразят навсякъде, където е използван.
== Подход 1: Собствен компонент ==


==Подход 2: Допълнителен обект==
QML поддържа дефинирането на [http://doc.qt.nokia.com/4.7/qml-extending-types.html#defining-new-components собствени компоненти]. По-долу, ние създаваме собственият компонент '''TitleText''', който можем после да използваме в нашата програма, когато искаме заглавен текст. Ако изкаме да променим външният вид на всички заглавни текстове в нашият интерфейс, можем просто да редактираме ''TitleText.qml'' и промените ще се отразят навсякъде, където е използван.
 
<code>// TitleText.qml
Text {
horizontalAlignment: Text.AlignHCenter
font.pixelSize: 50
color: "green"
}
 
// употреба
TitleText {
text: "Title 1"
}</code>
 
== Подход 2: Допълнителен обект ==


При този подход, дефинираме '''Style''' обект, който съдържа колекцията от свойства, дефиниращи стила. Този обект е инстанциран в главният компонент, така че да е видим в цялото приложение.
При този подход, дефинираме '''Style''' обект, който съдържа колекцията от свойства, дефиниращи стила. Този обект е инстанциран в главният компонент, така че да е видим в цялото приложение.


==Подход 3: Хибриден (Style обект + собствен компонент )==
<code>// Style.qml
QtObject {
property int textSize: 20
property color textColor: "green"
}
 
// главен компонент
Rectangle {
Style { id: style }
}
 
// употреба
Text {
font.pixelSize: style.textSize
color: style.textColor
text: "Hello World"
}</code>
 
== Подход 3: Хибриден (Style обект + собствен компонент ) ==


При този подход, имаме '''Style''' обект, който се използва в нашият компонент.
При този подход, имаме '''Style''' обект, който се използва в нашият компонент.


===Categories:===
<code>// Style.qml
QtObject {
property int titleAlignment: Text.AlignHCenter
property int titleFontSize: 50
property color titleColor: "green"
}
 
// главен компонент
Rectangle {
Style { id: style }
}
 
// TitleText.qml
Text {
horizontalAlignment: style.titleAlignment
font.pixelSize: style.titleFontSize
color: style.titleColor
}


* [[:Category:Developing with Qt|Developing_with_Qt]]
// употреба
** [[:Category:Developing with Qt::Qt-Quick|Qt Quick]]
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 Italian Magyar French

Създаване на стилове в QML

QML предоставя няколко механизъма за стилизиране на потребителския интерфейс. Представяме ви три често срещани подхода.

Подход 1: Собствен компонент

QML поддържа дефинирането на собствени компоненти. По-долу, ние създаваме собственият компонент TitleText, който можем после да използваме в нашата програма, когато искаме заглавен текст. Ако изкаме да променим външният вид на всички заглавни текстове в нашият интерфейс, можем просто да редактираме TitleText.qml и промените ще се отразят навсякъде, където е използван.

// TitleText.qml
Text {
 horizontalAlignment: Text.AlignHCenter
 font.pixelSize: 50
 color: "green"
}

// употреба
TitleText {
 text: "Title 1"
}

Подход 2: Допълнителен обект

При този подход, дефинираме Style обект, който съдържа колекцията от свойства, дефиниращи стила. Този обект е инстанциран в главният компонент, така че да е видим в цялото приложение.

// Style.qml
QtObject {
 property int textSize: 20
 property color textColor: "green"
}

// главен компонент
Rectangle {
 
 Style { id: style }
 
}

// употреба
Text {
 font.pixelSize: style.textSize
 color: style.textColor
 text: "Hello World"
}

Подход 3: Хибриден (Style обект + собствен компонент )

При този подход, имаме Style обект, който се използва в нашият компонент.

// Style.qml
QtObject {
 property int titleAlignment: Text.AlignHCenter
 property int titleFontSize: 50
 property color titleColor: "green"
}

// главен компонент
Rectangle {
 
 Style { id: style }
 
}

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

// употреба
TitleText {
 text: "Title 1"
}