1

QT から始めて、次の QML コードを使用して TextField のスタイルを設定しようとしています。

property Component textfieldStyle: TextFieldStyle {
    background: BorderImage {
        source: control.focus ? "images/input-border-focused.png" : "images/input-border.png"
        border.left: 0 ; border.right: 0 ; border.top: 0 ; border.bottom: 4
    }
}

私の質問は次のとおりです。下の画像のように、このような境界線とフィールド内のアイコンを設定する方法はありますか?

ここに画像の説明を入力青い部分がウィンドウの背景です。

もしそうなら、どうすればそれを行うことができますか?

前もって感謝します。

4

1 に答える 1

1

TextFieldStyle にはコンポーネントを使用する必要があるため、BorderImage の使用に制限されていません。たとえば、このような Rectangle を使用して独自のフィールドを作成できます。

TextField {
    style: TextFieldStyle {
        textColor: "black"
        background: Rectangle {
            radius: 2
            border.color: "red"
            border.width: 3

            Image {
                width: 10
                height: 10
                source: "qrc:///inner.png"
                anchors.verticalCenter: parent.verticalCenter
                anchors.left: parent.left
                anchors.leftMargin: 10
            }
        }
    }
}

Rectangle には border プロパティがあるため、直接使用して境界線を設定できます。

于 2014-08-16T12:55:04.173 に答える