Виталий Антипов
Oct. 5, 2017, 10:08 a.m.

Добавление строки в Combobox

Здравствуйте! Подскажите, как добавить пустую строку в Combobox?

ComboBox {
        id: combo_ceh
        property string id: ""
        currentIndex: -1
        anchors.top: tf_kks.bottom
        anchors.topMargin: 5
        anchors.left: text_ceh.right
        anchors.leftMargin: 5
        Material.accent: Material.LightBlue
        model: model_ceh
        textRole: 'Cehname'
        onCurrentTextChanged: {
            if(currentIndex==-1){
                combo_ceh.id = ""                
            } else {
            combo_ceh.id = model_ceh.getId(currentIndex)            
            }
        }
    }
2

Do you like it? Share on social networks!

1
Evgenii Legotckoi
  • Oct. 5, 2017, 1:09 p.m.

Содержимое ComboBox зависит от модели данных, поэтому наиболее простым вариантом мне кажется наличие пустого поля в самой модели данных.
То есть добавлять нужно в саму модель. Я не знаю, что из себя у вас представляет модель данных, но в самом простом варианте это может выглядеть так.

ComboBox {
    model: ["", "Second", "Third"]
}
Первое значение будет пустым.
Дополнительно добавлять пустые поля можно через методы append или иные, если они присутствуют у модели данных.
Или вы хотите, чтобы при индексе -1 было пусто? Тогда возможно, вам нужно поработать с делегатом, который настраивает внешний вид ComboBox.
ComboBox {
    id: cmbx
    delegate: Item {
        text: (cmbx.currentIndex == -1) ? "" : modelData
    }
}
То есть примерно такой вариант может быть с определёнными уточнениями.

    Comments

    Only authorized users can post comments.
    Please, Log in or Sign up
    • Last comments
    • AK
      April 1, 2025, 11:41 a.m.
      Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
    • Evgenii Legotckoi
      March 9, 2025, 9:02 p.m.
      К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
    • VP
      March 9, 2025, 4:14 p.m.
      Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…
    • ИМ
      Nov. 22, 2024, 9:51 p.m.
      Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
    • Evgenii Legotckoi
      Oct. 31, 2024, 11:37 p.m.
      Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup