QML - Невозможно привязать модель Combobox к элементу списка вариантов - PullRequest
0 голосов
/ 26 февраля 2019

Может кто-нибудь помочь мне решить эту проблему?Я не могу привязать вариант списка к комбинированному списку.

Мой код здесь

Window {
  property var nameList: []
  id: mainWindow
  visible: true
  minimumWidth: 1024
  minimumHeight: 600
  width: minimumWidth
  height: minimumHeight

  ComboBox{
    id: cbo1
    currentIndex: 0
  }

  Binding{
    target: cbo1
    property: "model"
    value: nameList
  }

  Component.onCompleted: {
    for(i = 0; i < 5; i++) {
        nameList.push(i)
        console.log("data: " + nameList[i])
    }
  }

Любая помощь - моя благодарность, большое спасибо!

1 Ответ

0 голосов
/ 26 февраля 2019

Для привязки к работе свойство должно измениться.Добавление элементов в список не изменяет ссылку на список, поэтому для привязки список никогда не менялся.Решением является создание временного списка, который заменит исходный список:

Component.onCompleted: {
    var tmp = [];
    for(var i = 0; i < 5; i++) {
        tmp.push(i)
    }
    nameList = tmp; // change property
}
...