0

style プロパティを使用してスクロール可能な TextArea のテキストの色を変更する際に問題があります。

含まれているモジュールも .pro ファイルから追加しました。

QT += qml quick core quickcontrols2

これは私の .qml ファイルがどのように見えるかです:

 import QtQuick 2.7 
 import QtQuick.Controls 2.0
 import QtQuick.Controls.Styles 1.4
 import QtQuick.Layouts 1.1
 import QtQuick.Controls.Material 2.0
 import QtGraphicalEffects 1.0

 ApplicationWindow {
 visible: true
 width: 640
 height: 480
 title: qsTr("Test")

 Page {
     width: parent.width
     height: parent.height
     background: Rectangle {
         color: "#000000"
         width: parent.width
         height: parent.height
     }

    Flickable {
        id: flickable
        anchors.bottom: parent.bottom
        width: parent.width-50
        flickableDirection: Flickable.VerticalFlick
        height: 200

        TextArea.flickable: TextArea {
            id: pane1
            text: "This is some text"
            font.bold: false
            font.pointSize: 10
            wrapMode: Text.WordWrap
            clip: true

            style: TextAreaStyle {
                textColor: "#4F4F4F"
            }

            background: Rectangle {
                color: "#FFFFFF"
                width: parent.width
                height: parent.height
            }
        }

        ScrollBar.vertical: ScrollBar { }
    }
 }
 }

この例を実行したときに表示されるエラー メッセージ:

QQmlApplicationEngine はコンポーネント qrc:/main.qml:38 のロードに失敗しました 存在しないプロパティ「スタイル」に割り当てることはできません

私はいくつかの依存関係を欠いていると思いますが、正しい方向に私を指し示すドキュメントには何も見つかりませんでした.

4

1 に答える 1

2

@BaCaRoZzoのコメントをコミュニティの回答として投稿します。


styleプロパティはコントロールでは使用できません 2. スタイリングはコントロールでインライン化されます。ここを参照してください。

QtQuick.Controls.Styles 1.4インポートしなかったコントロール 1.x をスタイリングする必要があるため、インポートを削除することもできます。

于 2019-08-29T13:07:43.597 に答える