Wenn der Array-Index für dieses Item nun False ist, dann soll der ItemIndex der ListBox nicht auf das angeklickte Item gesetzt werden.
Hier ein Beispiel, bei dem alle ungeraden Zeilen nicht angewählt werden können:
Delphi-Quellcode:
procedure TForm207.ListBox1MouseActivate(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y, HitTest:
Integer; var MouseActivate: TMouseActivate);
var
idx: Integer;
begin
idx := ListBox1.ItemAtPos(Point(X, Y), True);
if Odd(idx) then begin
MouseActivate := maNoActivateAndEat;
end;
end;