-
Ukrainec (09.02.08 00:36) [0]Собственно, сабж - Как изменить цвет item'a в TCheckListBox?
В TListBox изменяю цвет следующим образом:
procedure TForm1.CheckListBox1DrawItem(Control: TWinControl;
Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
with CheckListBox1 do
begin
Canvas.Brush.Color:=clSkyBlue;
Canvas.FillRect(Rect);
Canvas.TextOut(Rect.Left+2,Rect.Top,Items[index]);
end;
end; -
Германн © (09.02.08 00:47) [1]
> Ukrainec (09.02.08 00:36)
>
> Собственно, сабж - Как изменить цвет item'a в TCheckListBox?
>
>
> В TListBox изменяю цвет следующим образом:
>
> procedure TForm1.CheckListBox1DrawItem(Control: TWinControl;
>
> Index: Integer; Rect: TRect; State: TOwnerDrawState);
> begin
> with CheckListBox1 do
> begin
> Canvas.Brush.Color:=clSkyBlue;
> Canvas.FillRect(Rect);
> Canvas.TextOut(Rect.Left+2,Rect.Top,Items[index]);
> end;
> end;
>
Откуда "надыбал" сей пример? -
Ukrainec (09.02.08 00:55) [2]В DelphiWorld6
-
Германн © (09.02.08 01:06) [3]
> Ukrainec (09.02.08 00:55) [2]
И что не получается? -
Ukrainec (09.02.08 01:12) [4]В TListBox цвет item'a меняется на Ура! А вот в TCheckListBox - не хочет меняться...procedure TForm1.CheckListBox1DrawItem(Control: TWinControl;
Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
with CheckListBox1 do
begin
Canvas.Brush.Color:=clSkyBlue;
Canvas.FillRect(Rect);
Canvas.TextOut(Rect.Left+2,Rect.Top,Items[index]);
end;
end; -
Ukrainec (09.02.08 01:15) [5]Извиняюсь... не так написал код в первом посте. Так правильней:procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
with ListBox1 do
begin
if FileExists(ENewPath.Text+ListBox1.Items.Strings[Index]) then
Canvas.Brush.Color:=clSkyBlue;
Canvas.FillRect(Rect);
Canvas.TextOut(Rect.Left+2,Rect.Top,Items[index]);
end;
end; -
Германн © (09.02.08 01:31) [6]
> Ukrainec (09.02.08 01:15) [5]
Свойство Style в обоих случаях одинаковое? -
Ukrainec (09.02.08 01:36) [7]Да, lbStandard
-
Ukrainec (09.02.08 01:37) [8]Спасибо за идею!
Поставил свойство Style в lbOwnerDrawFixed - и всё стало на свои места! -
Германн © (09.02.08 01:45) [9]
> Ukrainec (09.02.08 01:37) [8]
>
> Спасибо за идею!
>
> Поставил свойство Style в lbOwnerDrawFixed - и всё стало
> на свои места!
>
Ой что-то ты врал в
> Ukrainec (09.02.08 01:12) [4]
>
> В TListBox цвет item'a меняется на Ура! А вот в TCheckListBox
> - не хочет меняться...
>
Я даже догадываюсь что. -
Ukrainec (09.02.08 01:47) [10]С чего это вдруг я врал?? В TListBox'e со стандартными настройками, цвет item'a нормально изменяется
-
Германн © (09.02.08 02:16) [11]
> Ukrainec (09.02.08 01:47) [10]
>
> С чего это вдруг я врал?? В TListBox'e со стандартными настройками,
> цвет item'a нормально изменяется
>
Ты это сам проверял? В своём проекте? На своей Дельфи? На своём компьютере?