在窗口调整大小时更改多边形大小

时间:2018-07-02 06:18:39

标签: qt qml

在我的QML应用程序中,我正在使用“画布”对象手动绘制三角形。问题是,每次重新调整主窗口大小时,我都无法弄清楚如何更改绘制的对象大小。最好是,如果每次窗口调整大小时我都可以简单地重绘三角形,那将很方便。但是我不知道如何在QML中完成。在裸露的QT中,我想我会订阅窗口大小更改的信号。在QML中执行此操作的正确方法是什么? 我将不胜感激。

编辑:此处描述了该程序:Change polygon color dynamically

在我的主窗口中,有一个名为rectMain的矩形。它的大小始终与窗口相同。然后在该矩形内还有另一个,称为rectTemp。我在那个矩形中绘制画布。

Edit2:到目前为止,我已经弄清楚了如何手动更改窗口大小:

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();

0 个答案:

没有答案