qt: invalid property name 'x' (M16) for bu

2019-03-30 05:21发布

I'm using Qt 5.4.1 in QtCreator 3.3.1

I've imported QtQuick.Controls 1.2 into my QML and added a series of buttons:

Rectangle {
    id: buttonBar
    x: 480
    y: 0
    width: 320
    height: 80
    Button {
        x: 0
        y: 0

        width: 80
        height: 60

        text: "Songs"
    }

    Button {
        x: 80
        y: 0

        width: 80
        height: 60

        text: "Artists"
    }

    Button {
        x: 160
        y: 0

        width: 80
        height: 60

        text: "Albums"
    }

    Button {
        x: 240
        y: 0

        width: 80
        height: 60

        text: "Back"
    }
}

They all render fine when I run the program, but everytime that QtCreator opens the qml file it jumps into design mode and I get the warning:

invalid property name 'x' (M16) 

and the lines where I use x, y, width and height are all underlined when I view the file in edit mode.

But the documentation says these are valid properties for my buttons - http://doc.qt.io/qt-5/qml-qtquick-controls-button-members.html

How do I stop/resolve this error message?

标签: qt qml
2条回答
地球回转人心会变
2楼-- · 2019-03-30 05:47

It's a bug in the type info that is generated for controls for use of Qt Creator.

To suppress this error, add comment:

Button {
    // @disable-check M16
    x: 80
    y: 0
}
查看更多
做自己的国王
3楼-- · 2019-03-30 05:47

Try to add import QtQuick.Window 2.2 before all other imports in qml.

查看更多
登录 后发表回答