Ir al contenido


Foto

Saber el valor del Objeto de un item de un Listbox


  • Por favor identifícate para responder
4 respuestas en este tema

#1 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 25 julio 2009 - 10:12

Pues tengo el siguiente code que sirve para almacenar dos valores en un Item del listbox usando la propiedad AddObject:



delphi
  1. type
  2.   TmiObjeto = class(TObject)
  3.     sPath: String;
  4.   end;
  5.  
  6. procedure TForm1.AgregarALista(sFullPath: String);
  7. var
  8.   obj : TmiObjeto;
  9.   sFileName : string;
  10. begin
  11.   sFileName := ExtractFileName(sFullPath);
  12.   obj := TmiObjeto.Create;
  13.   obj.sPath := sFullPath;
  14.   listbox1.Items.AddObject(sFileName, TmiObjeto(obj));
  15. end;



Pues el asunto funciona porque se agrega el item, pero quiero confirmar el valor del objeto que se almacenó, o sea, el valor de Obj del item luego de agregado, ¿alguna idea? *-)

Saludos.
  • 0

#2 felipe

felipe

    Advanced Member

  • Administrador
  • 3.283 mensajes
  • LocationColombia

Escrito 25 julio 2009 - 10:26

¿Y que tipo de valores recibe?
  • 0

#3 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 25 julio 2009 - 10:35

sFileName = El nombre del Archivo;
Obj = La ruta del archivo como objeto;

En el listbox muestra el nombre del archivo, me imagino que en modo no visible ese item tiene el valor del objeto la ruta del mismo, y eso es lo qu quiero confirmar si en verdad guarda ese valor.

Saludos.
  • 0

#4 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 25 julio 2009 - 10:38

Joder, yo mismo me respondo, ¿estoy aprendiendo o qué? :D



delphi
  1. procedure TForm1.ObtenerObjeto(i: Integer);
  2. var
  3.   Obj: TmiObjeto;
  4. begin
  5.   Obj := ListBox1.Items.Objects[i] as TmiObjeto;
  6.   Ruta := Obj.sPath; //Variable global
  7. end;



Modo de uso:



delphi
  1. procedure TForm1.ListBox1DblClick(Sender: TObject);
  2. begin
  3. ObtenerObjeto(ListBox1.ItemIndex);
  4. ShowMessage(Ruta); //Ruta es una variable global
  5. end;



Saludos.
  • 0

#5 felipe

felipe

    Advanced Member

  • Administrador
  • 3.283 mensajes
  • LocationColombia

Escrito 25 julio 2009 - 10:43

Joder, yo mismo me respondo, ¿estoy aprendiendo o qué? :D


Eso esta bien amigo  :D
  • 0




IP.Board spam blocked by CleanTalk.