Ver Mensaje Individual
  #5  
Antiguo 22-06-2010
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Reputación: 23
maeyanes Va por buen camino
Hola...

Vaya, no había leido bien este tema...

En Delphi, el tipo de datos string no es una clase, así que hacer algo como LV_Cat.Selected.SubItems.Objects[0] as string no es correcto.

Para hacer lo que necesitas tendrías que crear una nueva clase que internamente maneje un string, y entonces si, guardar objetos de esta clase en la propiedad mencionada. Algo como:

Código Delphi [-]
type
  TString = class
  private
    FStr: string
  public
    property Str: string
      read FStr
      write FStr;
  end;

// Agregamos un objecto TString a la lista:
var
  Str: TString;

begin
  Str := TString.Create;
  Str.Str := 'Mi cadena';
  Item.SubItems.Objects[0] := Str;
end;

// Leemos el "String" guardado
var
  S: string;

begin
  S := TString(LV_Cat.Selected.SubItems.Objects[0]).Str
end;

// Al cerrar la forma que contiene el TListView tendrías que hacer algo como:
var
  I: Integer;

begin
  for I := 0 to Pred(LV_Cat.Selected.SubItems.Count) do
    LV_Cat.Selected.SubItems.Objects[0].Free
end;

También puedes checar este link: http://delphi.about.com/od/vclusing/..._addobject.htm



Saludos...
__________________
Lee la Guía de Estilo antes que cualquier cosa. - Twitter
Responder Con Cita