Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: Ilya_181 от Сентябрь 02, 2017, 22:58



Название: цвет текстового курсора "|" в QGraphicsTextItem
Отправлено: Ilya_181 от Сентябрь 02, 2017, 22:58
Как изменить цвет текстового курсора "|" в QGraphicsTextItem. По умолчанию он черный. И если я делаю в сцене черный фон, курсор не видно.
Я не могу использовать другой фон, нужен именно черный. Текст конечно же используется белый, однако мигающий курсор остается черным.
Подскажите, как добиться, например, белого текстового курсора?


Название: Re: цвет текстового курсора "|" в QGraphicsTextItem
Отправлено: Ilya_181 от Сентябрь 03, 2017, 23:37
ИМХО
Один из вариантов ответа:
Код
C++ (Qt)
        QGraphicsTextItem *item = sameTextItem;
       // вот этот вариант меняет цвет текста но не меняет цвет курсора.
       QTextCursor cursor = item->textCursor();
       QTextCharFormat foregroundFormat;
       foregroundFormat.setForeground(QBrush(color));
       cursor.mergeCharFormat(foregroundFormat);
       item->setTextCursor(cursor);
 
       // этот вариант меняет цвет текста и цвет курсора, однако вместе с этим весь имеющийся текст изменится на этот цвет.
       item->setDefaultTextColor(color);