Losowanie zaznaczenia w listbox

0

Witam
Jak za pomocą przycisku losować zaznaczenie w listbox? Dajmy na to mam 10 itemów - chcę za pomocą przycisku Losuj za każdym razem jak go naciskam - aby mi wybierało różną pozycję. Czytałem coś o funkcji Random, ale jak ją tutaj zastosować?

0

Jeżeli mogą się powtarzać, to:

ListBox.ItemIndex := Random(maksymalna_wartosc);

Jeżeli nie, to można zrobić coś takiego:

Var Wylosowane: Array[0..maksymalna_wartosc] Of Integer;
    Licznik: Integer = 0;

Function Losuj: Integer;
Var L, I: Integer;
    F: Boolean;
Begin
 While (True) Do
 Begin
  F := True;
  L := Random(maksymalna_wartosc);  
  For I := 0 To maksymalna_wartosc Do
   if (Wylosowane[I] = L) Then
   Begin
    F := False;
    Break;
   End;
  if (F) Then
   Break Else
  Begin
   ShowMessage('Nie można już nic wylosować!');
   Exit;
  End;
 End;
 Wylosowane[Licznik] := L;
 Inc(Licznik);
 Result := L;
End;
0

Ogromne dzięki!
Dostosowałem kod do własnych potrzeb, bo czasem przy pierwszym rozwiązaniu jakie podałeś program zaznaczał jeszcze raz taką samą wartość. Poniżej daje jeśli ktoś by potrzebował:

var
  zaznaczona:integer;
begin
  zaznaczona:=ListBox.ItemIndex;
  ListBox.ItemIndex := Random(kategorie.Count);
  while zaznaczona = kategorie.ItemIndex do begin
    ListBox.ItemIndex := Random(kategorie.Count);
  end;

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