Как я использую QTextBlock?

Мне нравится ReSharper, также! Это доступно, если Вы - студент или иначе подключенный к университету.

Для взаимодействия с SVN я предпочту AnkhSVN.

.. и конечно для соединения с Сервером TeamFoundation существует Проводник Команды Visual Studio

7
задан troyane 18 April 2015 в 09:23
поделиться

2 ответа

QTextEdit позволит вам добавить ваше содержимое через QString :

QTextEdit myEdit("the fish are coming");

Он также позволяет вам использовать QTextDocument , который содержит блоки текста. Сам QTextDocument также может принимать QString :

QTextEdit myEdit;
QTextDocument* myDocument = new QTextDocument("the fish are coming", &myEdit);
myEdit.setDocument(myDocument);

Однако: «Если вам нужно создать новый текстовый блок или изменить содержимое документа при проверке его содержимого, используйте интерфейс на основе курсора, предоставляемый QTextCursor взамен ". (Документация Qt) (Заметьте, я добавил строки QTextBlockFormat , чтобы было ясно, где находятся блоки.)

QTextEdit myEdit;
QTextDocument* myDocument = new QTextDocument(&myEdit);
myEdit.setDocument(myDocument);
QTextCursor* myCursor = new QTextCursor(myDocument);

QTextBlockFormat format;
format.setBackground(Qt::red);
myCursor->setBlockFormat(format);

myCursor->insertText("the ");

format.setBackground(Qt::green);
myCursor->insertBlock(format);
myCursor->insertText("fish ");

format.setBackground(Qt::yellow);
myCursor->insertBlock(format);
myCursor->insertText("are ");

format.setBackground(Qt::red);
myCursor->insertBlock(format);
myCursor->insertText("coming!");

format.setBackground(Qt::green);
myCursor->insertBlock(format);
myCursor->insertText(QString(%1 blocks").arg(myDocument->blockCount()));
myEdit.show();

Похоже, мне пришлось приложить много усилий. Не могли бы вы предоставить дополнительную информацию о том, почему вы считаете, что вам нужно использовать QTextBlock s?

13
ответ дан 6 December 2019 в 15:23
поделиться

Вы должны проверить документацию здесь

Вы можете присвоить свою строку QString, а затем добавить ее в QTextEdit, или вы можете проанализировать QString с помощью section () см. здесь

0
ответ дан 6 December 2019 в 15:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: