crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> QTextTable Разбиение столбца на 2, splitCell()
bynet
  опции профиля:
сообщение 9.3.2010, 19:23
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 69
Регистрация: 17.3.2008
Из: Belarus
Пользователь №: 124

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




Репутация:   0  


Привет всем! Интересует разбиение столбца на столбцы. По вики вычетал splitCell() но как его использовать незнаю. Приведите пример

Таблица к пример:
---------------------------------
1------| 2 | 3 | 4 |
---------------------------------
1.1|1.2 | 2.1 | 3.1 | 4.1 |
---------------------------------
Вот так я создаю таблицу

QTextCursor cursor(editor->textCursor());
cursor.movePosition(QTextCursor::Start);
QTextTable *table = cursor.insertTable(2, 3, tableFormat);
cursor = table->cellAt(0, 0).firstCursorPosition();
cursor.insertText(tr("1"), textFormat);
cursor = table->cellAt(0, 1).firstCursorPosition();
cursor.insertText(tr("2"), boldFormat);
cursor = table->cellAt(0, 2).firstCursorPosition();
cursor.insertText(tr("3"), textFormat);
cursor = orderTable->cellAt(0, 3).firstCursorPosition();
cursor.insertText(tr("4"), boldFormat);


Как мне расбить колонку 1 на 1.1. 1.2 на следующей строчке?

Сообщение отредактировал bynet - 9.3.2010, 19:28
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 10.3.2010, 0:38
Сообщение #2


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

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




Репутация:   29  


Так?

Раскрывающийся текст
    QTextTableFormat tableFormat;
    tableFormat.setBorder(1);
    tableFormat.setCellPadding(16);
    tableFormat.setAlignment(Qt::AlignCenter);
    
    QTextCharFormat textFormat;
    
    QTextCursor cursor(textEdit->textCursor());
    cursor.movePosition(QTextCursor::Start);
    
    QTextTable *table = cursor.insertTable(2, 5, tableFormat);
    table->mergeCells(0, 0, 1, 2);
    table->splitCell(0, 0, 1, 2);
    
    cursor = table->cellAt(0, 0).firstCursorPosition();
    cursor.insertText(tr("1"), textFormat);
    cursor = table->cellAt(0, 2).firstCursorPosition();
    cursor.insertText(tr("2"), textFormat);
    cursor = table->cellAt(0, 3).firstCursorPosition();
    cursor.insertText(tr("3"), textFormat);
    cursor = table->cellAt(0, 4).firstCursorPosition();
    cursor.insertText(tr("4"), textFormat);

    cursor = table->cellAt(1, 0).firstCursorPosition();
    cursor.insertText(tr("1.1"), textFormat);
    cursor = table->cellAt(1, 1).firstCursorPosition();
    cursor.insertText(tr("1.2"), textFormat);
    cursor = table->cellAt(1, 2).firstCursorPosition();
    cursor.insertText(tr("2"), textFormat);
    cursor = table->cellAt(1, 3).firstCursorPosition();
    cursor.insertText(tr("3"), textFormat);
    cursor = table->cellAt(1, 4).firstCursorPosition();
    cursor.insertText(tr("4"), textFormat);

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
bynet
  опции профиля:
сообщение 10.3.2010, 23:03
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 69
Регистрация: 17.3.2008
Из: Belarus
Пользователь №: 124

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




Репутация:   0  


да, спасибо
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 27.12.2024, 12:47