我目前在Qt上工作,当我尝试绘制一些东西(对于e.x矩形)给出它的x,y坐标&它的宽度和宽度高度Qt开始从x,y坐标开始绘制矩形到正确的方向,以展示我正在谈论的内容,见下图:
Rect1 http://i.share.pho.to/fda5886a_c.png
和以下代码:
Rectangle {
id: rectangle1
x: 257
y: 221
width: 50
height: 50
color: "#000000"
}
我想知道无论如何我都可以在x,y坐标的左边开始绘制,它就像绘制宽度和宽度一样。高度负值。请参阅下图以进行说明:
Rect2 http://i.share.pho.to/73577395_o.png
我尝试过绘制宽度为负值,它在设计模式下工作正常,但是当我运行或调试我的应用程序时,矩形没有显示,任何想法都会受到赞赏
答案 0 :(得分:4)
您不能为此目的使用负值,因为QML不支持负宽度或高度。但您可以使用Scale
类型来完成此任务:
Rectangle {
id: rectangle1
x: 257
y: 221
width: 50
height: 50
color: "#000000"
transform: Scale { origin.x: 0; origin.y: 0; xScale: -1}
}
Scale
可让您相对于任意点缩放项目。这里我们相对于它的内部点(0,0)缩放项目的X轴。
答案 1 :(得分:0)
从左侧父区域绘制矩形50px:
Rectangle {
id: rectangle1
x: parent.width - 50 // rectangle start 50px from the left
y: 221 // similar with y pos: parent.height - 50
width: 50
height: 50
color: "#000000"
}
但我不确定如果我理解你的问题。