Russian Qt Forum
Ноябрь 06, 2024, 14:36 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 ... 5 6 [7]   Вниз
  Печать  
Автор Тема: QTableWidget или QAbstractTableModel &QTableView  (Прочитано 57267 раз)
daimon
Гость
« Ответ #90 : Декабрь 03, 2009, 21:48 »

Тогда список не подойдет как контейнер (как тогда узнать индекс) - лучше вектор (индекс ячейки оператор [])
QList - это тоже массив (не смущайтесь что list это "список") он имеет оператор [] так же как и QVector.
Нет просто для индексации всей таблицы нужен вектор (ячейка может быть только в последней колонке, индекс [])
Например 2 колонка 2 строка - [2][2], а если insert то индекс уже не будет такой (вектор изменяется под размер таблицы)
Размер вектора может быть 2000*2000 и содержит всего один элемент [2][2]
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #91 : Декабрь 03, 2009, 22:10 »

Тогда список не подойдет как контейнер (как тогда узнать индекс) - лучше вектор (индекс ячейки оператор [])
QList - это тоже массив (не смущайтесь что list это "список") он имеет оператор [] так же как и QVector.
Нет просто для индексации всей таблицы нужен вектор (ячейка может быть только в последней колонке, индекс [])
Например 2 колонка 2 строка - [2][2], а если insert то индекс уже не будет такой (вектор изменяется под размер таблицы)
Размер вектора может быть 2000*2000 и содержит всего один элемент [2][2]
Возможно Вы хотите сказать что будете хранить вектор указателей из 2000*2000 элементов но только один элемент указывает на данные (остальные NULL). По поводу insert: да, когда Вы вставляете новую колонку - индексы изменятся, но ведь это нормально, так и должно быть. Если же Вы имеете ввиду что-то другое - поясните, лучше на примере.
Записан
daimon
Гость
« Ответ #92 : Декабрь 03, 2009, 22:42 »

Тогда список не подойдет как контейнер (как тогда узнать индекс) - лучше вектор (индекс ячейки оператор [])
QList - это тоже массив (не смущайтесь что list это "список") он имеет оператор [] так же как и QVector.
Нет просто для индексации всей таблицы нужен вектор (ячейка может быть только в последней колонке, индекс [])
Например 2 колонка 2 строка - [2][2], а если insert то индекс уже не будет такой (вектор изменяется под размер таблицы)
Размер вектора может быть 2000*2000 и содержит всего один элемент [2][2]
Возможно Вы хотите сказать что будете хранить вектор указателей из 2000*2000 элементов но только один элемент указывает на данные (остальные NULL). По поводу insert: да, когда Вы вставляете новую колонку - индексы изменятся, но ведь это нормально, так и должно быть. Если же Вы имеете ввиду что-то другое - поясните, лучше на примере.
QList не подходит, лучше QVector. Как делать resize для вектора QVector<QVector<QVariant*>>, чтобы не делать ресайз каждой строки вектора в цикле?
Записан
Kolobok
Гость
« Ответ #93 : Декабрь 04, 2009, 02:08 »

Сколько всего реальных данных предполагается хранить в таблице?
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #94 : Декабрь 04, 2009, 14:41 »

QList не подходит, лучше QVector. Как делать resize для вектора QVector<QVector<QVariant*>>, чтобы не делать ресайз каждой строки вектора в цикле?
Если надо вставить колонку (не строку) - то ресайз в цикле делать придется, какой бы контейнер Вы ни взяли (любой из Qt, любой из STL). Непонятно чем Вам не угодил удобный QList и какую задачу Вы решаете Улыбающийся
Записан
MoPDoBoPoT
Гость
« Ответ #95 : Декабрь 04, 2009, 16:30 »

Только если не считать, что мы храним вектор со столбцами, но тогда добавить строку - борода  Улыбающийся
Записан
daimon
Гость
« Ответ #96 : Декабрь 04, 2009, 21:47 »

Только если не считать, что мы храним вектор со столбцами, но тогда добавить строку - борода  Улыбающийся
Если использовать SQL не будет проблема с памятью для очень больших таблиц?
Записан
daimon
Гость
« Ответ #97 : Декабрь 04, 2009, 22:06 »

Как организовать свой контейнер, чтобы таблица позволяла использовать роли (Qt::Disp....Qt::Edit)?
Записан
Страниц: 1 ... 5 6 [7]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.058 секунд. Запросов: 23.