Página 1 de 1

Publicas y Privadas

Publicado: Sab Dic 10, 2005 7:38 pm
por paco-ssi
Utilizo varias variables en un formulario.
Como debo definirlas y donde?
He probado:
COMPONENT ......
Data AUXNOMBRE
METHOD .....
Tambien
Public AUXNOMBRE := ""

Publicas y Privadas

Publicado: Sab Dic 10, 2005 10:42 pm
por Francisco Sanchez
Hombre asi a bote pronto se me ocurre que si son DATAS las tienes visibles
en toda la clase y no te harian falta variables publicas ni private para
nada. Otra cosa es que las quieras hacer visibles desde otro sitio, que bien
podrias hacerlo derivando de la clase en cuestion donde esten las datas, o
bien por ejemplo asignarles valores desde donde llames a la clase en
cuestion.
Espero haberte aclarado algo, pero seguro que te daran una mejor explicacion
de esto.
Y el appdata yo lo utilizaria para guardar aquellos valores que desees tener
visibles y disponibles en toda la aplicacion.
Un saludo

Publicas y Privadas

Publicado: Sab Dic 10, 2005 11:07 pm
por paco-ssi
Gracias Francisco, pero si las quiero tener visibles en todo el formulario,
Donde las deberia declarar?
Paco V
"Francisco Sanchez" <francisco@softwaretotal.biz> escribió en el mensaje
news:439b4c0a$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Hombre asi a bote pronto se me ocurre que si son DATAS las tienes visibles
> en toda la clase y no te harian falta variables publicas ni private para
> nada. Otra cosa es que las quieras hacer visibles desde otro sitio, que
> bien podrias hacerlo derivando de la clase en cuestion donde esten las
> datas, o bien por ejemplo asignarles valores desde donde llames a la clase
> en cuestion.
>
> Espero haberte aclarado algo, pero seguro que te daran una mejor
> explicacion de esto.
>
> Y el appdata yo lo utilizaria para guardar aquellos valores que desees
> tener visibles y disponibles en toda la aplicacion.
>
> Un saludo
>

Publicas y Privadas

Publicado: Dom Dic 11, 2005 7:52 am
por Ingo
Paco,
por ejemplo:
COMPONENT ......
Data AUXNOMBRE INIT ""
METHOD .....
despues en el formulario
....
::AUXNOMBRE:="XXX"
o
MsgInfo(::AUXNOMBRE)
Saludos
Ingo
"Paco V." <paco-ssi@usuarios.retecal.es> schrieb im Newsbeitrag
news:439b20a1$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Utilizo varias variables en un formulario.
>
> Como debo definirlas y donde?
>
> He probado:
> COMPONENT ......
> Data AUXNOMBRE
> METHOD .....
>
> Tambien
>
> Public AUXNOMBRE := ""
>
>
>

Publicas y Privadas

Publicado: Dom Dic 11, 2005 8:47 am
por Francisco Sanchez
Arriba entre el CLASS y el ENDCLASS al igual que hace xailer con un
formulario, lo unico es que xailer declara COMPONENT para las variables de
los controles, pues tu DATA para las variables que no pertenezcan a ningun
control y quieras utilizar.
Un saludo

Publicas y Privadas

Publicado: Dom Dic 11, 2005 11:55 am
por jfgimenez
Paco,
> Utilizo varias variables en un formulario.
>
> Como debo definirlas y donde?
Como te han dicho Paco e Ingo, sólo tienes que declararlas dentro del bloque
CLASS... / ENDCLASS, y después usas el operador Self (::) para acceder a
ellas. P.ej.:
CLASS TForm1 FROM TForm
COMPONENT oEdit1
DATA nNumero
METHOD CreateForm()
METHOD FormInitialize( oSender )
ENDCLASS
METHOD FormInitialize( oSender ) CLASS TForm1
::nNumero := 1
MsgInfo( ::nNumero )
RETURN Nil
--
Un saludo,
José F. Giménez

Publicas y Privadas

Publicado: Dom Dic 11, 2005 2:33 pm
por Xevi
Paco,
Cuando necesitas de variables DENTRO de un solo Formulario (Prg), y lo vas a
utilizar tanto en métodos como funciones, yo lo que hago es crear variables
STATIC.
No se si es buena técnica, pero me funciona perfectamente.
Un Saludo,
Xevi.
"Paco V." <paco-ssi@usuarios.retecal.es> escribió en el mensaje
news:439b20a1$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
>
> Utilizo varias variables en un formulario.
>
> Como debo definirlas y donde?
>
> He probado:
> COMPONENT ......
> Data AUXNOMBRE
> METHOD .....
>
> Tambien
>
> Public AUXNOMBRE := ""
>
>
>
>

Publicas y Privadas

Publicado: Dom Dic 11, 2005 8:15 pm
por jfgimenez
Xevi,
> Cuando necesitas de variables DENTRO de un solo Formulario (Prg), y lo vas
> a utilizar tanto en métodos como funciones, yo lo que hago es crear
> variables STATIC.
> No se si es buena técnica, pero me funciona perfectamente.
No tiene por que ser mala, en absoluto, es buena técnica. El pero es que no
puedes acceder a una de esas variables desde fuera del módulo. En cambio, si
es una DATA de la clase, sí puedes.
En cualquier caso, ambas técnicas son buenas y se deben utilizar cada una en
su momento correcto. Yo también uso algunas variables estáticas, e incluso
variables GLOBALes; estas últimas son una extensión de xHarbour, y son una
pasada ;-)
--
Un saludo,
José F. Giménez

Publicas y Privadas

Publicado: Dom Dic 11, 2005 9:58 pm
por antonio.f.ortega
¿ Hay alguna diferencia entre declararlas como Datas o Property ? , por que
si la memoria no me falla escuche en algun momento que es mejor declararlas
como Property.
Gracias.
Saludos.
Antonio F. Ortega

Publicas y Privadas

Publicado: Dom Dic 11, 2005 10:07 pm
por jfgimenez
Antonio,
>¿ Hay alguna diferencia entre declararlas como Datas o Property ? , por que
> si la memoria no me falla escuche en algun momento que es mejor
> declararlas
> como Property.
Las property son un tipo más avanzado de DATA. Lo más importante es que
soportan cláusulas READ y/o WRITE, que permite ejecutar el código que
queramos en el momento de leer o grabar la propiedad. Pero si no se usa
ninguna de estas 2 cláusulas, su comportamiento es el mismo que las DATAs.
--
Un saludo,
José F. Giménez

Publicas y Privadas

Publicado: Lun Dic 12, 2005 12:01 am
por antonio.f.ortega
Gracias Jose.
Antonio F. Ortega

Publicas y Privadas

Publicado: Mar Dic 13, 2005 11:07 am
por Paco V
Gracias a todos.
Me acabo de enterar muy bien de como funcionan las variables.
Y he visto que mi problema era el Self ::, no me acordaba que hay que decir
a quien pertenece.
Gracias de nuevo.
Paco V