Não é possível atribuir QString a QQuickItem* com Qt.resolvedUrl

Não é possível atribuir QString a QQuickItem* com Qt.resolvedUrl

Eu tenho o seguinte código:

Tabs {
    Tab {
        id: financialDetailsTab
        title: i18n.tr("Financial Details")
        page: Qt.resolvedUrl("FinancialDetails.qml")
    }
    Tab {
        id: monthlyBudgetTab
        title: i18n.tr("Monthly Budget")
        page: Qt.resolvedUrl("MonthlyBudget.qml")
    }
    Tab {
        id: annualBudgetTab
        title: i18n.tr("Annual Budget")
        page: Qt.resolvedUrl("AnnualBudget.qml")
    }
    Tab {
        id: savingsGoalsTab
        title: i18n.tr("Savings Goals")
        page: Qt.resolvedUrl("SavingsGoals.qml")
    }
}

que está gerando os seguintes erros:

Unable to assign QString to QQuickItem*
Unable to assign QString to QQuickItem*
Unable to assign QString to QQuickItem*
Unable to assign QString to QQuickItem*

nas linhas onde Qt::resolvedUrlestá sendo usado. O Tabscomponente faz parte do SDK do Ubuntu, e não do Qt Quick, e o únicoexemplode seu uso não fornece muitos insights sobre o problema.

Adicionei exatamente as mesmas linhas das propriedades do MainView, fora do Tabscomponente, e o problema não ficou evidente aí, me levando a acreditar que o problema está no componente Ubuntu.

Todos os arquivos existem e estão no mesmo nível do projeto que este. O que estou fazendo de errado aqui?

Responder1

A maneira correta de escrever isso é:

Tabs {
  Tab {
    page: FinancialDetails {}
    // ...
  }
  // ...
}

pagequer um Item, mas Qt.resolvedUrlretorna uma string. Que não será interpretado como uma URL para um item e, portanto, não será carregado.

informação relacionada