Supprimer dans un TListBox Delphi 5

HellyBoy229 Messages postés 5 Date d'inscription jeudi 27 novembre 2003 Statut Membre Dernière intervention 18 décembre 2003 - 17 déc. 2003 à 03:24
HellyBoy229 Messages postés 5 Date d'inscription jeudi 27 novembre 2003 Statut Membre Dernière intervention 18 décembre 2003 - 18 déc. 2003 à 14:13
Salut,
J'essaie de faire un petit programme sauf qu'aussitot
que j'essaie de supprimer PLUSIEURS choses qui sont sélectionné, le programme plante. Voici mon petit code:

procedure TForm1.Button1Click(Sender: TObject);
Var
i: Integer;
begin
  For i := 0 To listbox1.items.count-1 Do
  Begin
    If listbox1.selected[i] = True Then
      Listbox1.items.delete(i);
  end;
end;


Merci d'avance!

4 réponses

HellyBoy229 Messages postés 5 Date d'inscription jeudi 27 novembre 2003 Statut Membre Dernière intervention 18 décembre 2003
17 déc. 2003 à 03:33
J'avais oublié de préciser. DeleteSelected n'existe pas
en Delphi5.. c'est pour ça que j'ai des problèmes :).
J'espère que quelqu'un va pouvoir m'aider.
0
HellyBoy229 Messages postés 5 Date d'inscription jeudi 27 novembre 2003 Statut Membre Dernière intervention 18 décembre 2003
17 déc. 2003 à 03:56
Merci LoOnEy!!!
J'ai trouvé un source qui montrait comment faire.
Est-ce que quelqu'un pourrait me dire pourquoi
le sien fonctionne et pas le mien?

procedure TForm1.Button1Click(Sender: TObject);
Var
i: Integer;
begin
For i:=ListBox1.Items.Count-1 downto 0 do
  begin
  if ListBox1.Selected[i] then
    begin
    ListBox1.Items.delete(i);
    end;
  end;
end;



Ce site est super! Merci beaucoup.
0
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
17 déc. 2003 à 09:10
La nuance est là :
For i:=ListBox1.Items.Count-1 downto 0


Après avoir supprimé un ou plusieurs éléments de la liste, tu essayes de détruire, malgré tout, le Ième élément qui n'existe plus.
En faisant comme Looney (c'est à dire en partant de la fin de la liste), tu ne peux détruire qu'un élément existant.
May Delphi be with you
0
HellyBoy229 Messages postés 5 Date d'inscription jeudi 27 novembre 2003 Statut Membre Dernière intervention 18 décembre 2003
18 déc. 2003 à 14:13
Oui, j'ai finit par comprendre cela. C'est encore le genre d'erreur que tu ne fais qu'une fois et que tu t'en veux toute ta vie tellement que c'est ridicule =D. Merci beaucoup pour votre aide et j'espère pouvoir vous reparler bientot.
0
Rejoignez-nous