Zaznacz (ale inaczej) w ListView

0

Witam,

Standardowo w ListView z CheckBox'em, aby zaznaczyć pole CheckBox trzeba kliknąć dokładnie w to pole. Jak zaznaczać (odznaczać) to pole ale klikająć ogólnie w element listy.

Poniższa procedura zaznacza CheckBox w wyniku wybrania (kliknięcia) danego elementu.

procedure TForm1.ListView1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
I: Integer;

begin

if (Button = mbLeft) then
for I := 0 to ListView1.Items.Count - 1 do

begin

    if  ListView1.Items.Item[I].Selected = True and
        ListView1.Items.Item[I].Checked = False then
        ListView1.Items.Item[I].Checked := True
end;

end;

Co należy tutaj zmodyfikować, aby można było odznaczać (zaznaczone) elementy.

Z góry dziękuję za wszystkie podpowiedzi.

Pozdrawiam,

Piotr Murawski

0

polecam to:

procedure TForm1.ListView1SelectItem(Sender: TObject; Item: TListItem;
Selected: Boolean);
begin
if selected then item.Checked:=true
else
item.Checked:=false;
end;

0

procedure TForm1.ListView1SelectItem(Sender: TObject; Item: TListItem;
Selected: Boolean);
begin
if Selected then Item.Checked:=not Item.Checked
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1