Jan. 5, 2020, 1:36 p.m.

Как изменить форматирование qtableview после добавления данных?

QTableView

Всем доброго времени суток и всех с прошедшими и наступающими праздниками!
Подскажите как реализовать вот такой момент. Есть qtableview, ы который добавляются данные следующим образом

    if(!altIdentList->isEmpty()){
        AltIdentModel* model = new AltIdentModel(altIdentList->count(), this);
        for (int i = 0; i < altIdentList->count(); i++) {
            if(altIdentList->at(i).getPartNumberObject() != nullptr)
                model->setAltIdent(i, 1, altIdentList->at(i).getPartNumberObject()->getPartNumberValue());
            if(altIdentList->at(i).getManufacturerCodeObject() != nullptr)
                model->setAltIdent(i, 2, altIdentList->at(i).getManufacturerCodeObject()->getManufacturerCodeValue());
        }
        ui->altIdentTable->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
        ui->altIdentTable->horizontalHeader()->setSelectionMode(QAbstractItemView::NoSelection);
        ui->altIdentTable->setSelectionMode(QAbstractItemView::NoSelection);
        ui->altIdentTable->setWordWrap(false);
        ui->altIdentTable->setModel(model);
    }

Но иногда ширины ячейки не хаватает для отображения содержимого и в конце появляется моноготочие. Так вот у меня вопрос, как изменить тип отображения с варианта "растягивание" на вариант "отображение по контексту"?

Заранее благодарен за помощь!

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
7

После обновления данных вызывайте
для всех столюцов

ui->altIdentTable->resizeColumnsToContents();

или для одного

ui->altIdentTable->resizeColumnToContents(column);

Спасибо, я тоже думал об этом, но в этом случае получается, что таблица не растягивается на всю область и это некрасиво получается. Можно ли как-то проверить содержимое ячейки на предмет помещается ли оно в ячейку целиком и если нет, то применять не растягивание, а растягивание по контенту?

Используйте

ui->altIdentTable->horizontalHeader()->stretchLastSection();

Последний столбец растянется на всю доступную ширину.

Не получается. Точнее получается, но при этом, если есть длинее значения, то они не отображаются полностью. Может можно как-то проверить, если значение влазит в ширину ячейки применять одну настройку, если нет, то другую.

Решил задачку. Если кому-то будет интересно, пишите. Выложу свой вариант решения. Просто сейчас времени нет, а потом могу забыть )))

Сделайте маленькую статью в разделе Qt

Отличная идея. Правда я статью писать буду первый раз!

Comments

Only authorized users can post comments.
Please, Log in or Sign up
Donate

Hello, Dear Users of EVILEG!!!

If the site helped you, then support the development of the site financially, please.

You can do it by following ways:

Thank you, Evgenii Legotckoi

DK
Jan. 16, 2020, 3:19 a.m.
Dmitrij Korjagin

C++ - Test 001. The first program and data types

  • Result:73points,
  • Rating points1
LZ
Jan. 16, 2020, 3:03 a.m.
Lilija Ziganurova

C++ - Test 005. Structures and Classes

  • Result:50points,
  • Rating points-4
p
Jan. 13, 2020, 4:59 p.m.
popkadurak

C++ - Test 002. Constants

  • Result:100points,
  • Rating points10
Last comments
Jan. 17, 2020, 2:31 a.m.
Andrej Jankovich

Выглядит как ошибка библиотеки. Расскажите подробно на какой платформе вы собираете проект (MinGW или MSVC) их версии и версии Qt.
D
Jan. 16, 2020, 12:06 p.m.
DENIZ1819

Доброго времени суток, не подскажите, что делать в данной ситуации, после того, как я сделал все вышеуказанные инструкции для подключения библиотеки к проекту?
Jan. 14, 2020, 5:33 a.m.
Evgenij Legotskoj

Рекомендую Wt, достаточно мощная вещь. Этот фреймворк может использоваться для написания сайтов на C++, либо можно использовать только отдельный компоненты, например только ORM. Но я не знаю, ка…
a
Jan. 14, 2020, 5:29 a.m.
ayb

Спасибо за инфу. Поиск качественной ORM привел меня только к sqlite_orm, но не подходит из-за необходимости полноценной поддержки c++14. Про framework Wt не слышал, спасибо за наводку.
Jan. 14, 2020, 2:50 a.m.
Evgenij Legotskoj

Вы заблуждаетесь. Любая нормальная ORM позволяет выполнение сырых SQL запросов. А если хорошо разобраться в работе моделей данных в Qt, то не составит труда использовать ORM вместе с Qt, ту же с…
Now discuss on the forum
VZ
Jan. 18, 2020, 7:25 a.m.
Vladimir Zhitkovsky

В приложении есть страницы с контролами. в с++ я заполняю структуры ассоциированные с контролами в qml. затем генерю сигнал о том, что все данные готовы и в qml по этому сигналу заполняю контрол…
Jan. 18, 2020, 7:12 a.m.
Ruslan Polupan

Строку host разкоментировать и указать адрес сервера [listener];host=192.168.0.100port=8080minThreads=4maxThreads=100cleanupInterval=60000readTimeout=60000maxRequestSize=16000maxMulti…
Jan. 17, 2020, 2:20 a.m.
Intruder

Александр, доброго дня! Я тоже только учусь и поэтому мой код может быть не совершенен. За отклик большое спасибо.
L
Jan. 16, 2020, 8:14 p.m.
LesLype

Oct Products Similiar To Lasix Kamagra Now.Co.Uk Sky Pharmacy Canada [url=http://cialibuy.com]Buy Cialis[/url] Viagra Ricetta Ripetibile
Jan. 16, 2020, 6:05 p.m.
Aleksej Vnukov

в лоадер вроде как нельзя передать значение при загрузке, я не нашел такой возможности, через стек без проблем. если использую лоадер - я передаю в С++ нужные параметры, а потом при загрузке стр…
EVILEG
About
Services
© EVILEG 2015-2019
Recommend hosting TIMEWEB