Ver Mensaje Individual
  #3  
Antiguo 03-11-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Si sólo metes un valor en la lista, el primer condicional se ejecuta y se incremente el valor de x de manera que al llegar al segundo condicional x = 1 y no habiendo más que el elemento 0 en la lista te produce el error por intentar acceder a listbox3.Items[1].

Si metes dos valores no te falla porque listbox3 tiene los elmentos 0 y 1.

También te va a fallar si no hay ningún elemento en la lista. En este caso fallará dese el primer condicional al intentar acceder a listbox3[0] ya que no existe item coníndice 0.

No sé bien qué intentas hacer pero da la impresión de que requieres un bucle:

Código Delphi [-]
for x := 0 to listbox3.Count - 1 do
begin
  table4.Insert;
  table4.FieldByname('Exp1').AsString:=listbox3.Items[x];
  table4.Post;
end;

De esta forma, además de que abarcas cualquier número de elementos en la lista, te aseguras que dentro del bucle x sólo pueda ser un índice válido de listbox3. En el caso de que la lista esté vacía, ni siquierea se entrará al bucle.

// Saludos
Responder Con Cita