// Copyright (C) 2016 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause #include #include QString tr(const char *text) { return QApplication::translate(text, text); } int main(int argc, char *argv[]) { QApplication app(argc, argv); QTextEdit *editor = new QTextEdit(); QTextCursor cursor(editor->textCursor()); cursor.movePosition(QTextCursor::Start); QTextCharFormat plainFormat(cursor.charFormat()); QTextCharFormat colorFormat = plainFormat; colorFormat.setForeground(Qt::red); cursor.insertText(tr("Text can be displayed in a variety of " "different character " "formats. "), plainFormat); cursor.insertText(tr("We can emphasize text by making it ")); cursor.insertText(tr("italic, give it a different color ")); cursor.insertText(tr("to the default text color, underline it, ")); cursor.insertText(tr("and use many other effects.")); QString searchString = tr("text"); QTextDocument *document = editor->document(); //! [0] QTextCursor newCursor(document); while (!newCursor.isNull() && !newCursor.atEnd()) { newCursor = document->find(searchString, newCursor); if (!newCursor.isNull()) { newCursor.movePosition(QTextCursor::WordRight, QTextCursor::KeepAnchor); newCursor.mergeCharFormat(colorFormat); } //! [0] //! [1] } //! [1] editor->setWindowTitle(tr("Text Document Find")); editor->resize(320, 480); editor->show(); return app.exec(); }