Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.02;
Скачать: [xml.tar.bz2];

Вниз

вопрос о странном глюке стандартных цветовых констант   Найти похожие ветки 

 
Starkom   (2003-09-19 13:55) [0]

Наипростейший текст:
в ТриВью добавьте несколько элементов.

procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
Sender.Canvas.Brush.Color := clWindow;
Sender.Canvas.Font.Color := clWindowText;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
TreeView1.Enabled := not TreeView1.Enabled;
end;

Теперь понажимайте кнопочку. Затем замените clWindowText на clBlack или clRed. Понажимайте кнопочку. Видите разницу?
Для тех, кто не хочет этого делать - есть глюк именно с clWindowText. Хочется, чтобы при задисаблении ТриВью рисовался также, как и при енабленном состоянии. При clBlack или clRed все нормально - фон clWindow, а шрифт - clBlack или clRed. Но не хочется делать, полагаясь на цветовые настройки винды. Но при присвоении фонту цвета clWindowText, почему-то меняется и цвет фона!
Может кто-нибудь объяснить?


 
MBo   (2003-09-19 14:01) [1]

Sender.Canvas.Brush.Style := bsClear;


 
Starkom   (2003-09-19 14:04) [2]

Спасибо!
Но механизма я все равно не понял. Почему неожиданный эффект возникает только при использовании clWindowText?


 
MBo   (2003-09-19 14:09) [3]

Навскидку не ясно. Трассировать надо.
С другими системными тоже неоднозначно.


 
Starkom   (2003-09-19 14:13) [4]

TTreeView.HideSelection на системные цвета тоже как-то нехорошо влияет.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.10.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
1-3954
MIKL
2003-09-20 16:01
2003.10.02
Кисть!


14-4110
SergP
2003-09-13 12:44
2003.10.02
Чем NTFS лучше FAT32?


1-3988
LordBTR
2003-09-19 16:47
2003.10.02
Многоязыковая поддержка


14-4125
malkolinge
2003-09-09 17:10
2003.10.02
Мастаки Киевские го на природу на ЭТИХ выходных ?


1-3857
drakulita
2003-09-19 09:56
2003.10.02
Время обработки





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский