DropShadow 的自定义组件
Custom Component for DropShadow
由于 DropShadow
的这些属性没有改变:
radius: 10
samples: 15
color: "black"
在我的使用中,我尝试创建一个名为 Shadow.qml
的自定义组件来设置这些:
anchors.fill: target
source: target
两个属性。在这里:
import QtQuick 2.0
import QtGraphicalEffects 1.0
DropShadow{
id: root
/*
property string target
anchors.fill: target
source: target
*/
//property alias target: root.anchors.fill | root.source
/*
property alias fill: root.anchors.fill
property alias source: root.source
*/
radius: 10
samples: 15
color: "black"
}
在我的使用中,我可以这样使用它:
Shadow{
anchors.fill: myTarget
source: myTarget
}
并且有效。问题是我必须在两个地方写 myTarget
(即 anchors.fill
和 source
)所以我想把它减少到像这样的一行 Shadow{ target: myTarget }
我已经尝试过对这些作品的 Shadow.qml
和 none 的这 3 个注释掉的每个部分都进行了尝试!
目标不应该是 string
它应该是应该应用 DropShadow 的对象,可以是任何类型的图形 Item
property Item target
anchors.fill: target
source: target
应该可以。
但是你也可以让它填充源代码:
anchors.fill: source
现在,您设置的不是目标,而是源:
Shadow {
source: Rectangle { ... }
}
如果需要 属性 名称 target
,请为源创建一个别名:
DropShadow {
property alias target: source
anchors.fill: source
...
}
创建别名而不是 真实 属性 应该更有效。
由于 DropShadow
的这些属性没有改变:
radius: 10
samples: 15
color: "black"
在我的使用中,我尝试创建一个名为 Shadow.qml
的自定义组件来设置这些:
anchors.fill: target
source: target
两个属性。在这里:
import QtQuick 2.0
import QtGraphicalEffects 1.0
DropShadow{
id: root
/*
property string target
anchors.fill: target
source: target
*/
//property alias target: root.anchors.fill | root.source
/*
property alias fill: root.anchors.fill
property alias source: root.source
*/
radius: 10
samples: 15
color: "black"
}
在我的使用中,我可以这样使用它:
Shadow{
anchors.fill: myTarget
source: myTarget
}
并且有效。问题是我必须在两个地方写 myTarget
(即 anchors.fill
和 source
)所以我想把它减少到像这样的一行 Shadow{ target: myTarget }
我已经尝试过对这些作品的 Shadow.qml
和 none 的这 3 个注释掉的每个部分都进行了尝试!
目标不应该是 string
它应该是应该应用 DropShadow 的对象,可以是任何类型的图形 Item
property Item target
anchors.fill: target
source: target
应该可以。
但是你也可以让它填充源代码:
anchors.fill: source
现在,您设置的不是目标,而是源:
Shadow {
source: Rectangle { ... }
}
如果需要 属性 名称 target
,请为源创建一个别名:
DropShadow {
property alias target: source
anchors.fill: source
...
}
创建别名而不是 真实 属性 应该更有效。