QML 动态绑定到 parent.width



对于我的qml项目,我有一个按钮可以切换元素的视图。调用函数来更改宽度/高度

function toggleView()
{
    if( pageSavedFiles.listViewToggle == true)
    {
        pageSavedFiles.cellWidth = parent.width;
        pageSavedFiles.loaderWidth = parent.width
        pageSavedFiles.cellHeight = 50
        imageViewMode.source = "design/List view.png"
        pageSavedFiles.listViewToggle= false
    }
    else
    {
        pageSavedFiles.loaderWidth = 150
        pageSavedFiles.cellWidth = 170
        pageSavedFiles.cellHeight = 170
        imageViewMode.source = "design/Grid view.png"
        pageSavedFiles.listViewToggle= true
    }
}

问题是调整大小后,使用 parent.width 时不会调整宽度。我的猜测是它只设置一次,调整大小后不会再次计算。我怎样才能将它绑定到父宽度,以便它连续等于父宽度,而不是只设置一次。

要在一段 Javascript 中创建绑定,您需要执行以下操作:

pageSavedFiles.cellWidth = Qt.binding(function() { return parent.width; } )

最新更新