QML中的图像边框

时间:2016-07-18 10:04:39

标签: qt qml

我想在Image上设置动画边框。但令我惊讶的是,只有Rectangle才能提供border。我希望在Image周围移动一条虚线。如何获得这样的动画。这是我的示例代码,它只为Image提供边框。

Rectangle {
    width: image.width + 5
    height: image.height + 5
    border.color: "yellow"
    border.width: 5
    color: "transparent"

    Image {
        id: image
        anchor.centerIn: parent
        source: ""
    }
}

2 个答案:

答案 0 :(得分:0)

因为QML中的Canvas元素没有像JavaScript画布那样的setLineDash()方法(但你仍然可以模仿它,请参阅here),最简单的方法(imho)是将BorderImage与自定义图像一起使用用虚线图案。请参阅示例如何使用BorderImage here

您也可以在C ++中编写自己的QML元素,这些元素来源于QQuickPaintedItem或QQuickItem。

答案 1 :(得分:0)

BorderImage代替Rectangle

 Image {
   BorderImage { 
   }    
 }