Size: a a a

2020 December 12

AS

Anatoly Shirokov in Qt
A D
А как же языковой барьер, человек орехов обещал...
Гугл транслейт подтвердит
)))
Все орехи твои
источник

AD

A D in Qt
Anatoly Shirokov
Все орехи твои
Ненене, я обойдусь
)
источник

AA

AT Aineri in Qt
друзья, в общем, моё ознакомление с qml закончилось ещё большей ненавистью, чем было до того, как оно началось, но курсач нужно сдавать и переделывать всё на другой либе я не могу(
источник

AA

AT Aineri in Qt
Мне снова нужна помощь
источник

B

BAHR in Qt
Nastya Medveda
у меня ощущение, что сортируется дата из sourceModel, а отображается из QSortFilterProxy
Так вроде у Вас это первоначальным требованием было. Сортировку не трогаем, отображение изменяем.
А если теперь надо менять сортировку гуглим как это делается прокси модели.
источник

AA

AT Aineri in Qt
AT Aineri
Мне снова нужна помощь
Короче, у меня есть элементы интерфейса над так называемым ListView. И там как раз навигация по приложению. Соответственно, по нажатию на эту кнопку хотелось бы запустить процесс, связанный с моделью в ListView, но так как эти кнопки объявлены не в ListView они тупо не видят модель. Как можно соединить эту модель, объявленную в ListView с кнопками, не связанными с этой моделью?
источник

NM

Nastya Medveda in Qt
BAHR
Так вроде у Вас это первоначальным требованием было. Сортировку не трогаем, отображение изменяем.
А если теперь надо менять сортировку гуглим как это делается прокси модели.
Так у меня уже есть сортировка и она работает. Но когда я переопределила data  в QSortFilterProxy, то при изменении сортировки сначала отрисовываются данные из sourceModel, а потом перезаписываются неотсортированными из QSortFilterProxy
источник

AS

Anatoly Shirokov in Qt
Nastya Medveda
Так у меня уже есть сортировка и она работает. Но когда я переопределила data  в QSortFilterProxy, то при изменении сортировки сначала отрисовываются данные из sourceModel, а потом перезаписываются неотсортированными из QSortFilterProxy
Смотри
источник

AS

Anatoly Shirokov in Qt
я сделал синтетическую модель:
int MyTableModel::rowCount(const QModelIndex& parent) const
{
   if (parent.isValid())
       return 0;
   return 100;
}

int MyTableModel::columnCount(const QModelIndex& parent) const
{
   if (parent.isValid())
       return 0;
   return 10;
}

QVariant MyTableModel::data(const QModelIndex& index, int role) const
{
   if (index.isValid()) {
       switch (role) {
       case Qt::DisplayRole:
           if (index.column() % 2) {
               return index.row();
           }
           return 100 - index.row();
       }
   }
   return QVariant();
}

сделал конвертацию в наследнике QSortFilterProxyModel:
QVariant MySortFilterProxyModel::data(const QModelIndex& index, int role) const
{
   QModelIndex sourceIndex = mapToSource(index);
   QVariant value = sourceModel()->data(sourceIndex, role);
   if (value.isValid()) {
       return value.toInt() * 100;
   }
   return value;
}

настроил вид:
    proxy.setSourceModel(&source);
   ui->tableView->setSortingEnabled(true);
   ui->tableView->setModel(&proxy);

все работает
источник

S

Sergey eSKon in Qt
AT Aineri
Короче, у меня есть элементы интерфейса над так называемым ListView. И там как раз навигация по приложению. Соответственно, по нажатию на эту кнопку хотелось бы запустить процесс, связанный с моделью в ListView, но так как эти кнопки объявлены не в ListView они тупо не видят модель. Как можно соединить эту модель, объявленную в ListView с кнопками, не связанными с этой моделью?
listview.model ?
источник

AS

Anatoly Shirokov in Qt
источник

AA

AT Aineri in Qt
Sergey eSKon
listview.model ?
ой, дай попробую
источник

AA

AT Aineri in Qt
AT Aineri
ой, дай попробую
ДА НУ НАХ
источник

AA

AT Aineri in Qt
Sergey eSKon
listview.model ?
РАБОТАЕТ, БРО!
источник

NM

Nastya Medveda in Qt
Anatoly Shirokov
я сделал синтетическую модель:
int MyTableModel::rowCount(const QModelIndex& parent) const
{
   if (parent.isValid())
       return 0;
   return 100;
}

int MyTableModel::columnCount(const QModelIndex& parent) const
{
   if (parent.isValid())
       return 0;
   return 10;
}

QVariant MyTableModel::data(const QModelIndex& index, int role) const
{
   if (index.isValid()) {
       switch (role) {
       case Qt::DisplayRole:
           if (index.column() % 2) {
               return index.row();
           }
           return 100 - index.row();
       }
   }
   return QVariant();
}

сделал конвертацию в наследнике QSortFilterProxyModel:
QVariant MySortFilterProxyModel::data(const QModelIndex& index, int role) const
{
   QModelIndex sourceIndex = mapToSource(index);
   QVariant value = sourceModel()->data(sourceIndex, role);
   if (value.isValid()) {
       return value.toInt() * 100;
   }
   return value;
}

настроил вид:
    proxy.setSourceModel(&source);
   ui->tableView->setSortingEnabled(true);
   ui->tableView->setModel(&proxy);

все работает
Спасибо огромное. Дайте я попробую понять почему у меня не работает.
источник

AA

AT Aineri in Qt
Sergey eSKon
listview.model ?
Нащальнике, манема, волщебника!
источник

S

Sergey eSKon in Qt
Вообще куча вопросов отпадает если задать вопрос - а как бы я сделал это, чтобы было логично и понятно? Тогда и ответ был бы очевиден
источник

AS

Anatoly Shirokov in Qt
Sergey eSKon
Вообще куча вопросов отпадает если задать вопрос - а как бы я сделал это, чтобы было логично и понятно? Тогда и ответ был бы очевиден
ненависть глаза застит и разум :)
источник

S

Sergey eSKon in Qt
ну и в документацию иногда заглядывать тоже не грех
источник

AA

AT Aineri in Qt
Anatoly Shirokov
ненависть глаза застит и разум :)
именно так и происходит
источник