konto usunięte
Temat: Wyłączenie możliwości selected w CheckListBox
Witam,ma ktoś może pomysł jak wyłączyć możliwość opcji zaznaczenia itemu w liście tak aby żaden nie był zaznaczony. Pytam bo koloruje wiersze w liście w zależności od obecności pewnego znaku w Item[Index]. W czasie wykonywania procedury rysującej to sprawdzam i koloruję odpowiednio. Jeśli potem kliknę w ten element i nie ma tego znaku..to koloruje mi prostokąt a napis znika.. dlatego dodałem tam warunek ze jak jest zaznaczony element to exit.
To jest procedura:
var
myColor: TColor;
myBrush: TBrush;
tmp:String;
begin
myBrush := TBrush.Create;
with (Control as TCheckListBox).Canvas do
begin
tmp:=(Control as TCheckListBox).Items[Index];
if (Control as TCheckListBox).Selected[Index] then exit else
begin
if Copy(tmp,length(tmp),1)='%' Then
begin
myColor:=$00DFDFFF;
Delete(tmp,length(tmp),1);
end
else myColor:=clWhite;
myBrush.Style := bsSolid;
myBrush.Color := myColor;
Windows.FillRect(handle, Rect, myBrush.Handle) ;
Brush.Style := bsClear;
TextOut(Rect.Left, Rect.Top,tmp) ;
end;
MyBrush.Free;
end;
end;
Może jakaś podpowiedź albo żeby nie znikało..albo właśnie jak wyłączyć możliwość selected.Wojtek Stępień edytował(a) ten post dnia 03.12.10 o godzinie 22:01