Russian Qt Forum

Qt => Qt Quick => Тема начата: nwnclv от Декабрь 07, 2014, 01:02



Название: Пара вопросов по ListVew
Отправлено: nwnclv от Декабрь 07, 2014, 01:02
Приветствую всех!

Вопрос первый:

У меня есть модель для ListView, которая заполняется динамически. Изначально модель пуста. код QML
Код
C++ (Qt)
ListView {
 
   id: dirView
   model: dirModel
   delegate: dirDelegate
   ListModel {
       id: dirModel
       function refresh( path ) {
            .............. // load 'res' container
           dirModel.clear( )
           dirModel.append( res )
 
       }
   }
}

Этот рецепт я где-то на SO нашел. Но мне не нравится 2 вызова clear/append. Есть ли другой вариант развития событий?

Второй вопрос относится к внешнему виду. У меня ListVew вписан в Rectangle. То есть я ожидаю, что если я сделаю этому Rectangle border, то контент ListVew не выйдет за эту границу. Однако вижу то, что в аттаче.

Можно сделать ListView "anchors.margins: 20", например, но почему он без них выходит наружу?

Спасибо.


Название: Re: Пара вопросов по ListVew
Отправлено: navrocky от Декабрь 12, 2014, 10:49
Этот рецепт я где-то на SO нашел. Но мне не нравится 2 вызова clear/append. Есть ли другой вариант развития событий?
Судя по документации - нет. И я не вижу в этом особой проблемы.

Второй вопрос относится к внешнему виду. У меня ListVew вписан в Rectangle. То есть я ожидаю, что если я сделаю этому Rectangle border, то контент ListVew не выйдет за эту границу. Однако вижу то, что в аттаче.

Сделай clip: true для ListView.


Название: Re: Пара вопросов по ListVew
Отправлено: nwnclv от Декабрь 15, 2014, 23:49
О! Спасибо, помогло =)

А про обновление модели, думал мож какой set есть или swap.