crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Проблемы с QTextDocument - вставка таблицы.
panukov
  опции профиля:
сообщение 19.3.2010, 7:31
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 1
Регистрация: 19.3.2010
Пользователь №: 1547

Спасибо сказали: 0 раз(а)




Репутация:   0  


вставляю в odf документ таблицу. Делаю так:
void ODF_Generator::add_Table(QAbstractItemModel* table_model, QList<int> lengths)
{
    QTextTableFormat tableFormat;
    QBrush brush = tableFormat.borderBrush();
    brush.setColor(QColor(Qt::black));
    tableFormat.setBorderBrush(brush);
    tableFormat.setCellPadding(0);
    tableFormat.setCellSpacing(0);
    QVector<QTextLength> constraints;
    for(int i = 0; i < lengths.length(); i++)
        constraints << QTextLength(QTextLength::FixedLength, lengths[i]);
  
    tableFormat.setColumnWidthConstraints(constraints);
    cursor->insertTable(table_model->rowCount()+1, table_model->columnCount(), tableFormat);
    QTextCharFormat format;
    format.setFontPointSize(10);
    for(int j = 0; j < table_model->columnCount(); j++)
    {
        cursor->insertText(table_model->headerData(j, Qt::Horizontal).toString(),format);
        cursor->movePosition(QTextCursor::NextCell);
    }
    for(int i = 0; i < table_model->rowCount(); i++)
    {
        for(int j = 0; j < table_model->columnCount(); j++)
        {
            cursor->insertText(table_model->data(table_model->index(i,j, QModelIndex())).toString());
            cursor->movePosition(QTextCursor::NextCell);
        }
    }
    cursor->movePosition(QTextCursor::Down);
}



Таблица вставляется, но нет границ таблицы и ячеек. Также не выставляются ширины столбцы - все одинаковые: например при передаче модели с двумя столбцами и параметром lengths=(10,30) колонки получаем одной ширины.
Подскажите, что делаю неправильно?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 23.9.2020, 3:32