แมสซีฟไดนามิทรัพย์สินชื่อของแผนกระจายงานด้วยในตัวแทน

0

คำถาม

ฉันกำลังพยายามรวมการตั้งค่าวัตถุอยู่ในวแทนขอซ้ำชั้นดังนั้นฉันสามารถบันทึกค่าของ SpinBox. อย่างไรก็ตามฉันไม่สามารถหาวิธีที่จะ dynamically ตั้งค่าทรัพย์สินชื่อปลอมชื่อนะ

สิ่งที่ฉันอยากจะประสบความสำเร็จในส่วคือต้องมีทรัพย์สินชื่อปลอมชื่อของเพื่อเป็นเหมือนตอนที่ modelData. ตัวอย่างเช่นสำหรับ item1:"ทรัพย์สินชื่อปลอม item1:ล่องค่า";สำหรับ item2:"ทรัพย์สินชื่อปลอม item2:ล่องค่า"เป็นต้น

Column {
    Repeater {
        model: ["item1", "item2", "item3", "item4", "item5"]
        delegate: RowLayout {
            Settings {
                fileName: "config"
                category: modelData
                property alias value: box.value
            }
            Label {
                text: modelData
            }
            SpinBox {
                id: box
            }
        }
    }
}

รหัสอยู่เหนือสร้าการตั้งค่าต่อไปนี้แล้วคือทำงานไปรอบๆเพื่อสิ่งที่ฉันต้องการเพื่อจัสติสลีกออฟอเมริกา

[item1]
value=""
[item2]
value=""
[item3]
value=""
...

สิ่งที่ฉันต้องการคือผู้หมวดหมู่เดียวกับค่าอย่างงั้น:

[category]
item1=""
item2=""
item3=""
...
qml qt qt6
2021-11-20 01:36:52
1

คำตอบที่ดีที่สุด

1

สำหรับกรณีนี้คุณไม่สามารถใช้คุณสมบัติของแต่ value() แล้ว setValue() วิธีการ:

import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import Qt.labs.settings

ApplicationWindow {
    width: 640
    height: 480
    visible: true

    readonly property var values: ["item1", "item2", "item3", "item4", "item5"]
    Settings {
        id: settings
        category: "category"
    }

    Column {
        Repeater {
            model: values
            delegate: RowLayout {
                id: row_layout
                Label {
                    text: modelData
                }
                SpinBox {
                    id: box
                }
                Component.onCompleted: box.value = settings.value(modelData, 0)
                Component.onDestruction: settings.setValue(modelData, box.value)
            }
        }
    }
}

แสดงผล:

[category]
item1=6
item2=6
item3=4
item4=2
item5=2
2021-11-20 02:21:15

นี่ประสิทธิภาพดีจะตาย สิ่งเดียวที่ฉันได้พูดถึงเรื่องคืนนั้นฉันตั้ง onValueChanged ทรัพย์สินของกล่องเพื่อช่วยเพื่อการตั้งค่าเพื่อสร้างใช้ชื่อปลอมพฤติกรรม.
Vlad

@Vlad ใช่ฉันรู้ฉันกำลังจะเพิ่มมันแต่ IMO มันไม่จำเป็นต้องช่วยพวกเขาตลอดเวลาฉันชอบที่โหลดอยู่ที่จุดเริ่มต้นและช่วยตอนที่ทุกอย่างจะจบลง
eyllanesc

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่