如何在 QtControls 2.0 中为 SpinBox 设置对齐方式?

How to set alignment for SpinBox in QtControls 2.0?

我的 SpinBox 中文本的文本对齐方式默认居中。 SpinBox documentation 声明有 horizontalAlignment 属性,但是当我尝试指定水平对齐方式时,出现以下错误:

Invalid property name "horizontalAlignment". (M16)

我的完整 SpinBox 代码在这里:

SpinBox {
    editable: true
    horizontalAlignment: Qt.AlignLeft
    from: 1
    to: 10000
    value: model.numberOfElements
}

我将如何在 Qt Controls 2.0 的 SpinBox 中对齐文本?

首先,您指出的文档中的 link 来自 Qt Quick Controls 1 的 SpinBox,Qt Quick Controls 2 的 link 是:https://doc.qt.io/qt-5/qml-qtquick-controls2-spinbox.html.

考虑到上面的 Qt Quick Controls 2 有一个说明如何自定义控件的文档:Customizing Qt Quick Controls 2

SpinBox 的情况下,解决方案是:

import QtQuick.Controls 2.5

SpinBox {
    id: control
    value: 50
    editable: true
    contentItem: TextInput {
        z: 2
        text: control.textFromValue(control.value, control.locale)

        font: control.font
        color: "#21be2b"
        selectionColor: "#21be2b"
        selectedTextColor: "#ffffff"
        horizontalAlignment: Qt.AlignLeft
        verticalAlignment: Qt.AlignVCenter

        readOnly: !control.editable
        validator: control.validator
        inputMethodHints: Qt.ImhFormattedNumbersOnly
    }
}