danielmj,
Cita:
|
Empezado por danielmj
...eliminar elementos de lista...cuando seleccione desde el ultimo en entrar, todo va bien, ahora si tengo por ejemplo 5 artículos y empiezo a borrar por el primero o cualquiera que no sea el ultimo, da error "Access Violation"...
|
Revisa este código:
Código Delphi
[-]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
ListBox1: TListBox;
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
i : Integer;
begin
ListBox1.MultiSelect := True;
for i := 0 to 10 do
ListBox1.Items.Add('Item-' + IntToStr(i));
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i : Integer;
begin
for i := ListBox1.Count - 1 downto 0 do
if ListBox1.Selected[i] then
ListBox1.Items.Delete(i);
end;
end.
El código anterior en Delphi 7 sobre Windows 7 Professional x32,
ilustra como eliminar elementos de un TListBox en cualquier orden.
Espero sea útil
Nelson.