【问题标题】:QML Pushbutton with rounded cornersQML 圆角按钮
【发布时间】:2019-05-17 20:58:47
【问题描述】:

我正在使用 Creator 4.8.0 和 QtQuick 2.9

是否可以在 QML 中定义圆角按钮?

【问题讨论】:

    标签: qt qml


    【解决方案1】:

    QML 有一个带有半径属性的 RoundButton https://doc.qt.io/qt-5.11/qml-qtquick-controls2-roundbutton.html

    import QtQuick 2.9
    import QtQuick.Window 2.2
    import QtQuick.Controls 2.3
    
    Window {
        visible: true
        width: 640
        height: 480
        title: qsTr("Hello Round Button")
    
        RoundButton {
            text: "Press me please"
            radius: 5
        }
    }
    

    【讨论】:

    • RoundButton 没有出现在 Creator 的控件列表中
    • 您是否为 Qt Quick Controls 2 使用了正确的导入语句?导入 QtQuick.Controls 2.3
    • QtQuick.Controls 2.3 未出现在列表中
    • 不确定您指的是什么“列表”。我假设您没有使用设计器,而是您自己编辑代码。您需要 QML 文件中的导入语句。它可能不是 2.3 版,而是 2.2 版,因为您使用的是旧版本的 QtQuick,但它应该在那里。 RoundButton 从 Qt 5.8 开始就出现了。我会用一些代码更新答案。
    • 您也可以打开设计器并在那里添加一个圆形按钮表单。它应该添加您需要从那里工作的所有样板代码......
    【解决方案2】:

    如果你想使用 Rolf Winter 的回答:https://stackoverflow.com/a/53816297/7600801

    根据他们的博客文章,Qt Quick Controls 2.3 在 Qt 5.10 中发布: http://blog.qt.io/blog/2017/11/23/ready-qt-quick-controls-2-3/

    使用 Qt 的维护工具,您应该能够将 5.10 套件添加到您的安装中。然后在您的项目中,添加套件并选择它作为您要编译的套件,然后您应该能够导入 QtQuick.Control 2.3

    【讨论】:

    • 没必要。正如我在评论中所写,RoundButton 已经出现在 Qt 5.8 附近。 OP 使用的是 Qt Quick 2.9,这意味着 Qt 5.9。无需更新,只需将导入行更改为Qt Quick Controls的早期版本(在这种情况下为2.2)。
    猜你喜欢
    • 2011-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多