изменение цвета слов, которые уже есть в Qt qtextedit - PullRequest
0 голосов
/ 25 мая 2020

Я хочу изменить цвет некоторых слов после того, как пользователь написал их в qtextedit. Как это сделать?

например, пользователь пишет

enter image description here

Я хочу изменить его на

enter image description here

1 Ответ

0 голосов
/ 26 мая 2020

Для этого можно использовать сигнал QLineEdit::editingFinished(). Этот сигнал испускается при нажатии клавиши Return или Enter или при потере фокуса при редактировании строки.

Пример.

В конструкторе пользовательского интерфейса:

QObject::connect(MainWindow::yourQLineEdit, &QLineEdit::editingFinished, 
                 this, &MainWindow::SetTextColorInQLineEdit);

В слоте класса:

void MainWindow::SetTextColorInQLineEdit()
{
     MainWindow::yourQLineEdit->QWidget::setStyleSheet("your style for color");

     return;
}

Жесткий путь - Вам нужно переопределить QKeyEvent

И проверить это перечисление - QEvent::KeyPress и QEvent::KeyRelease

Посмотрите здесь:

QEvent https://doc.qt.io/qt-5/qevent.html

QKeyEvent https://doc.qt.io/qt-5/qkeyevent.html#text

...