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

Вниз

Выделить цветом   Найти похожие ветки 

 
ATLANTIDO   (2002-03-08 00:34) [0]

Подскажите плиз ! Как выделить строку в ComboBox другим
цветом ? Может это unreal ?


 
Song   (2002-03-08 18:02) [1]

Обрабатывай onDrawItem


 
ATLANTIDO   (2002-03-09 00:00) [2]

Вот мой кусок кода:

procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
Var Icon:TIcon;
k : byte;
begin
k:=5;
With TComboBox(Control) Do
Begin
Icon:=TIcon.Create;
try
ImageList1.GetIcon(Index,Icon);
Canvas.FillRect(Rect);
if GameList[Index+1].path="-" then Canvas.TextOut(Rect.Left+5,Rect.Top+2,Items[Index])
else Canvas.TextOut(Rect.Left+27+k,Rect.Top+2,Items[Index]);
Canvas.Draw(Rect.Left+2+k,Rect.Top+2,Icon);
finally
Icon.Free;
end;
End;
end;

Как видно , я выделяю строки путем их смещения (типа абзацы).
Выглядит так:

заголовок1:
.....
.....
.....
заголовок2:
.....
.....
.....

Т. е. выделяются строки по условию GameList[Index+1].path="-".
Хотелось бы их выделять не только позиционированием, но и цветом.
Если я правильно понял, то при обработке события Drawitem
можно динамически шрифт (а если шрифт то и цвет) менять (ComboBox1.Font:= ....) ?



 
Dimk   (2002-03-09 00:24) [3]

А Ты попробуй сначала
SaveColor := Canvas.Brush.Color; // сохранить цвет старый
....
// тут Тебе надо выделить
Canvas.Brush.Color := TipaNewColor; // :o)
Canvas.FillRect(Rect);
....
// потом надо вернуть обратно цвет кисти
Canvas.Brush.Color := SaveColor

Тоже можно и с фонтом проделать - у него есть Color тоже
Canvas.Font.Color


 
ATLANTIDO   (2002-03-09 15:30) [4]

Спасибо, разобрался.



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

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

Наверх





Память: 0.45 MB
Время: 0.005 c
7-80701
vvvico
2001-12-20 12:12
2002.03.25
Проблемка с W2K


3-80435
Antony
2002-02-27 12:14
2002.03.25
TQuery.Prepare, сильные утечки памяти


6-80652
star
2002-01-05 16:44
2002.03.25
Вопрос к хакерам, часть вторая ...


1-80605
AEro
2002-03-11 10:04
2002.03.25
Как присвоить значение переменной в bat-файле?


1-80582
Monk
2002-03-10 19:13
2002.03.25
E-mail!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский