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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Выгрузка содержимого QTableWidget  (Прочитано 3242 раз)
alex12
Гость
« : Ноябрь 07, 2007, 12:10 »

Всем привет!
Задача: Дан QTableWidget. Нужно выгрузить его содержимое в QByteArray. Потом из этого QByteArray загрузить в другой QTableWidget.

Вопрос: есть ли красивое "code less" решение?

Что мне приходит в голову: QTableWidget -- это значит, что в реальности используется QTableView + QStandartItemModel.
Значит задача выгрузить содержимое QStandartItemModel.

Пока я придумал что-то такое разлапистое:
Код:
QDataStream ds;
QStandartItemModel *model = tw->model();
QStandartItem defaultItem;
int i,j;
QStandartItem *si;

ds << model->rowCount();
ds << model->columnCount();
for(i=0;i<model->columnCount();i++)
{ si = horizontalHeaderItem(i);
  if( si == 0 ) defaultItem.write(ds);
  else           si->write( ds );
}
for(i=0;i<model->rowCount();i++)
{  si = verticalHeaderItem(i);
  if( si == 0 ) defaultItem.write(ds);
  else           si->write( ds );
}
for(i=0;i<model->rowCount();i++)
{ for(j=0;j<model->columnCount();j++)
  { si = model->item(i,j);
     if( si == 0 ) defaultItem.write(ds);
     else           si->write( ds );
  }
}
Записан
vaprele07
Гость
« Ответ #1 : Ноябрь 07, 2007, 13:05 »

см mimeData, dropMimeData у QAbstractItemModel, список итемов можно получить через QItemSelectionModel
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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