Ver Mensaje Individual
  #4  
Antiguo 12-04-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 27
Delphius Va camino a la fama
¡Ouch!
Como se nota que he perdido la práctica con los enumerados!

Entonces modifica a la función por esta otra:

Código Delphi [-]
function GetLaminaInfo(LaminaText: string; Info: integer): string;
var PosIni, PosEnd: integer;
begin
  //preventiva
  PosIni := 0;
  PosEnd := 0;

  // Dependiendo de la info a pedir, calculamos posiciones
  // iniciales y finales
  case Info of
  0: begin
            Posini := 1;
            PosEnd := Pos(' ',LaminaText);
          end;
  1: begin
                 PosIni := Pos(' ',LaminaText) + 1;
                 PosEnd := Length(LaminaText) - Pos(' ',ReverseString(LaminaText)) + 2;
               end;
  2: begin
             PosIni := Length(LaminaText) - Pos(' ',ReverseString(LaminaText)) + 1;
             PosEnd := Length(LaminaText) + 1;
           end;
  end;

  // copiamos el texto que esté comprendido desde PosIni a PosEnd
  result := Copy(LaminaText,PosIni,PosEnd - PosIni);
end;

Y te olvidas del tipo TLaminaInfo, borralo.
Y ya no deberías tener problemas.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita