前言
在日常的開發工作中,我們已經離不開枚舉類型,它能幫助我們進行更好的代碼架構、更好的代碼閱讀性,在QML中也是一樣。不說廢話了,開搞~~~
QML
資料真難找,網絡上找的 QML
資料又比較淺層,吐槽一下,主要目的是想各位如果有 QML
這方面的資料的話,私信給我借鑒借鑒好不好,謝謝各位看官了
E-Mail: 2604710376@qq.com
注意
5.10中允許在QML中自定義枚舉值,可以使用關鍵字enum來定義。如果你的版本不符合要求,請不要強求....
自定義枚舉
/** - 前提說明
關鍵字
\li enum
要求
\li Qt 版本在5.10及以上
\li 枚舉類型、枚舉值名字都要要以大寫字母開頭
使用格式
\li QML文件名.枚舉類型名.枚舉值名
*/
Step 1 > 新建QML文件: WidgetStyleType.qml
Step 2 > 定義枚舉類型
/** - Project.qml
import QtQuick 2.0
// 相當於 QObject 對象,不可視的
QtObject {
// \brief 自定義枚舉類型
// \li 默認風格
// \li 白雪風格
// \li 酷黑風格
enum SoftwareStyle {
DefaultStyle = 0x00000000,
SnowWhiteStyle = 0x00000001,
CoolBlackStyle = 0x00000002
}
}
*/
Step 3 > 使用枚舉類型
/** -main.qml
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls 1.4
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
Button {
property int type_00: Project.SoftwareStyle.DefaultStyle
property int type_01: Project.SoftwareStyle.SnowWhiteStyle
property int type_02: Project.SoftwareStyle.SnowWhiteStyle
text: "打印枚舉類型值"
onClicked: {
console.log(type_00)
console.log(type_01)
console.log(type_02)
}
}
}
*/
Step 4 > 輸出結果
/** -console.log
qml: 0
qml: 1
qml: 2
*/
總結
- 根據
QML
中的枚舉使用方式我們可以把QML
文件名當作我們的命名空間去應用在項目