【发布时间】:2020-05-25 17:02:23
【问题描述】:
【问题讨论】:
-
setStyleSheet() 方法应该这样做。
-
@ΦXocę웃Пepeúpaツ 我不明白为什么你需要知道条件?当用户按键时,我想改变一些单词的颜色。
-
@nader,很简单,因为 qt 有一些冗长的验证,可以在 2 行代码中解决问题...
【问题讨论】:
您可以使用QLineEdit::editingFinished() 信号来执行此操作。当按下 Return 或 Enter 键或行编辑失去焦点时会发出此信号。
示例。
在您的 UI 构造函数中:
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
在这里查看:
【讨论】: