Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Como paso un la intancia Tstrings de un TComboBox (ComboBox.items) por parametro? (https://www.clubdelphi.com/foros/showthread.php?t=45)

orfeo 05-05-2003 05:09:36

Como paso un la intancia Tstrings de un TComboBox (ComboBox.items) por parametro?
 
hola, tengo Delphi 6 y nesecito ayuda con POO de delphi, tengo un procedimeinto que devuelve una lista de string (Tstrings) de una consulta de SQL,
el problema es que no logro hacer que ande con dicho parametro....

la declaracion es:

procedure insert(a,b,string; VAR items:Tstrings)


si lo llamo como `metodo('','',ComboBox.items)` (ComboBox:TComboBox) me dice que no es posible enviar el objeto como parametro, por lo tanto si o si tengo que mandar el comboBox completo (el problema es que no queda muy reutilizable)

Como la solucion de mandar el combo, no me gusta.. Estoy usando una istancia temporal de un Tstrings (items) y la uso como variable de intercambio y luego le hago un conboBox.Items.AddStrings(items);

esta solocion, me gusta mas que la primera, pero lleva codigo de mas...

como hago para pasar solo el Tstrings como parametro?

roman 05-05-2003 07:58:52

Re: Como paso un la intancia Tstrings de un TComboBox (ComboBox.items) por parametro?
 
Cita:

Posteado originalmente por orfeo
procedure insert(a,b,string; VAR items:Tstrings)

...

como hago para pasar solo el Tstrings como parametro? [/b]
Lo único que debes hacer es quitar VAR de la declaración. En Delphi las variables de tipo objeto son en realidad punteros al objeto real. Si declaras:

procedure insert(a,b,string; items:Tstrings);

items es un puntero a un objeto de tipo TStrings por lo cual no hace falta pasarlo por referencia (var). Cualquier cosa que le cambies dentro del procedimiento permanecerá al salir de él.

// Saludos


La franja horaria es GMT +2. Ahora son las 05:08:49.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi