crossplatform.ru

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


  Ответ в Проблемы с QTextDocument - вставка таблицы.
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
panukov Дата 19.3.2010, 7:31
  вставляю в 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) колонки получаем одной ширины.
Подскажите, что делаю неправильно?
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 11.7.2025, 4:52