#delphi #canvas #selection #delphi-7
#delphi #холст #выделение #delphi-7
Вопрос:
Я хочу имитировать на холсте выделение / отмену выделения текста (например, в TEdit) в Delphi 7. Я использую fillRect для изменения цвета фона и TextOut для рисования текста. Но мне нужно знать 4 значения цвета для:
-
невыбранный текст;
-
выделенный текст;
-
фон невыбранного текста;
-
фон выделенного текста.
Эти значения меняются, когда пользователь меняет тему Windows или редактирует внешний вид окон. Для классической темы в Windows XP значения: clBlack, clWhite, clWhite, clNavy. Может быть, для этого в Delphi есть константы cl * или, может быть, мне нужно использовать функции Api для их получения. Кто-нибудь знает, как …? Спасибо.
Комментарии:
1. Возможно, вам лучше использовать API темы для рисования текста.
2. @David Heffernan Я тоже попробую, спасибо.
Ответ №1:
Невыбранный:
clWindow
clWindowText
Выделенный:
clHighlight
clHighlightText