Я создал подкласс qlineedit и написал собственное редактирование строки с текстом по умолчанию. Текст по умолчанию отображается серым цветом, пока пользователь не начнет вводить в него какой-либо текст. также редактирование строки имеет ввод маски времени. он принимает ввод только в диапазоне 23:59:59.
проблема в том, что когда строка редактирования пуста и текст по умолчанию отображается серым цветом, курсор также серый. Я хотел бы знать, как я могу изменить цвет курсора на черный, в то время как текст по умолчанию имеет серый цвет.
Я попытался переопределить paintevent. я видел исходный код qlineedit и увидел, что QLineControl::DrawCursor отвечает за отрисовку курсора в paintevent. но я понятия не имею, как изменить цвет пера, чтобы он мог повлиять на цвет курсора. Любые идеи о том, как это сделать? Спасибо.
void QCustomLineEdit::paintEvent(QPaintEvent * pe)
{
QLineEdit::paintEvent(pe);
QPainter painter;
painter.begin(this);
painter.setPen(Qt::red);
painter.end();
}