Qt 更改窗口大小时的多边形大小

Qt 更改窗口大小时的多边形大小,qt,qml,Qt,Qml,在我的QML应用程序中,我正在使用“Canvas”对象手动绘制一个三角形。问题是,每次调整主窗口的大小时,我都不知道如何更改绘制的对象大小 最好是,如果每次窗口调整大小时,我都可以简单地重新绘制三角形,这会很方便。但我不知道如何在QML中实现这一点。在裸QT中,我想我会订阅窗口大小改变的信号。在QML中这样做的正确方式是什么 编辑:程序如下所述: 在我的主窗口中有一个称为rectMain的矩形。它始终与窗口大小相同。然后在这个矩形中还有另一个,叫做rectemp。在那个长方形中我画画布 编辑2:

在我的QML应用程序中,我正在使用“Canvas”对象手动绘制一个三角形。问题是,每次调整主窗口的大小时,我都不知道如何更改绘制的对象大小

最好是,如果每次窗口调整大小时,我都可以简单地重新绘制三角形,这会很方便。但我不知道如何在QML中实现这一点。在裸QT中,我想我会订阅窗口大小改变的信号。在QML中这样做的正确方式是什么

编辑:程序如下所述:

在我的主窗口中有一个称为
rectMain
的矩形。它始终与窗口大小相同。然后在这个矩形中还有另一个,叫做
rectemp
。在那个长方形中我画画布

编辑2:到目前为止,我已经找到了如何手动应对窗口大小更改的方法:

property int lastWindowWidth: 0
property int lastWindowHeight: 0

function windowSizeChanged()
{
    if ((lastWindowWidth == width) && (lastWindowHeight == height))
        return;

    console.log("New height: ", height, " New width: ", width);

    lastWindowWidth = width
    lastWindowHeight = height
}

onHeightChanged: windowSizeChanged();
onWidthChanged: windowSizeChanged();

你能更好地解释一下吗,你的画布与窗口相比大小如何?@eyllanesc我已经编辑了这个问题。你想改变红色矩形的大小还是只改变内部三角形?这个矩形的大小是固定的。两者都有。红色矩形只是一个辅助容器,使我能够更轻松地维护绘制的三角形。它现在只有一个固定的尺寸。现在我需要修改它以保持主矩形之间的位置和比率。