Como puedo crear un array de objetos?

573 views
Skip to first unread message

Juan Moreyra

unread,
Jun 25, 2009, 9:08:31 AM6/25/09
to mundovis...@googlegroups.com
Hola Zorritos
 
Necesito crear "x" objetos, y mi alternativa es manejarlo por macros, pero me facilitaria mucho el trabajo si lo manejo en arrays, alguien me podria ayudar en como crear un array de objetos? o corregir este programita que es un ejemplo de lo que quiero hacer.
 
Se agradece las respuestas.
 
 
*----------------------------------------------------------------------------------------*
* Como hago para que _labe_text y _cbox_text sea un array?
* quiero usarlo asi _labe_text(1), _labe_text(2), _labe_text(3)...... etc
* osea: THISFORM._labe_text(1).Caption = "titulo"
SET TALK OFF
lo_form = CREATEOBJECT('Form') && Create a Form
lo_form.Width    = 300
lo_form.
Height   = 400
lo_form.
Closable = .F.
lo_form.
AddObject('lo_quit','cl_cbut')
lo_form.lo_quit.
Visible = .T.
 
ln_top = 10
ln_heigh = 17
FOR ln_h = 1 TO 20
  ls_h =
ALLT(STR(ln_h))
  ln_top = ln_top + ln_heigh
 
  lo_form.
AddObject('_labe_text&ls_h', 'label')
  lo_form._labe_text&ls_h..
Top     = ln_top
  lo_form._labe_text&ls_h..
Left    = 5
  lo_form._labe_text&ls_h..
Width   = 20
  lo_form._labe_text&ls_h..
Caption = ls_h
  lo_form._labe_text&ls_h..
Visible = .T.
  lo_form.
AddObject('_cbox_text&ls_h', 'checkbox')
  lo_form._cbox_text&ls_h..
Top     = ln_top
  lo_form._cbox_text&ls_h..
Left    = 27
  lo_form._cbox_text&ls_h..
Caption = 'Opcion' + ls_h
  lo_form._cbox_text&ls_h..
Visible = .T.
ENDFOR
 
lo_form.
SHOW
READ EVENTS
RETURN
 
DEFINE CLASS
cl_cbut AS CommandButton
  Caption
= '\<Salir'
  Cancel = .T.
  Left = 125
  Top = 150
  Height = 25
  PROCEDURE Click
    CLEAR EVENTS
ENDDEFINE
*----------------------------------------------------------------------------------------*
 
 
 

Juan Moreyra





Disfruta antes que nadie del nuevo Windows Live Messenger

Intel Man

unread,
Jun 25, 2009, 11:08:35 AM6/25/09
to mundovis...@googlegroups.com
Hola puedes buscar en la ayuda sobre thisform.controls()

Ejemplo:

thisform.Controls(1).caption="prueba"

Pero te vas a complicar mas porque tendrias que ver si es control de texto o caja de texto etc

Saludos



From: juanmor...@hotmail.com
To: mundovis...@googlegroups.com
Subject: [Mundo Visual FoxPro] Como puedo crear un array de objetos?
Date: Thu, 25 Jun 2009 13:08:31 +0000

Diferentes formas de estar en contacto con amigos y familiares. Descúbrelas. Descúbrelas.

Juan Moreyra

unread,
Jun 26, 2009, 10:35:11 AM6/26/09
to mundovis...@googlegroups.com
Hola Intel:

 

thisform.Controls(1).caption="prueba"
 
Este comando es cuando el objeto ya existe y se puede utilizar, mi problema es como crear el objeto en arrays o cual seria la instruccion
 
he usado para crear un array de 10, pero bota error, alquien ayuda con la sintaxis correcta o como se hace?

THISFORM.AddObject('_labe_text[10]', 'label')
THISFORM.AddObject
('_labe_text(10)', 'label')

Una vez creado el objeto ya se puede usar el thisform.Controls(1).caption="prueba" o similares

 
Saludos.
 

Juan Moreyra

 


From: intel_m...@hotmail.com
To: mundovis...@googlegroups.com
Subject: [Mundo Visual FoxPro] Re: Como puedo crear un array de objetos?
Date: Thu, 25 Jun 2009 15:08:35 +0000

Gerardo Baron

unread,
Jun 26, 2009, 10:37:45 AM6/26/09
to mundovis...@googlegroups.com
Utiliza la collection class.


Gerardo



Juan Moreyra escribió:
> Hola Intel:
>
>
>
> thisform.Controls(1).caption="prueba"
>
> Este comando es cuando el objeto ya existe y se puede utilizar, mi
> problema es como crear el objeto en arrays o cual seria la instruccion
>
> he usado para crear un array de 10, pero bota error, alquien ayuda con
> la sintaxis correcta o como se hace?
>
> THISFORM.AddObject('_labe_text[10]', 'label')
> THISFORM.AddObject('_labe_text(10)', 'label')
>
> Una vez creado el objeto ya se puede usar
> el thisform.Controls(1).caption="prueba" o similares
>
>
> Saludos.
>
>
> *Juan Moreyra*
>
>
>
> ------------------------------------------------------------------------
> From: intel_m...@hotmail.com
> To: mundovis...@googlegroups.com
> Subject: [Mundo Visual FoxPro] Re: Como puedo crear un array de objetos?
> Date: Thu, 25 Jun 2009 15:08:35 +0000
>
> Hola puedes buscar en la ayuda sobre thisform.controls()
>
> Ejemplo:
>
> thisform.Controls(1).caption="prueba"
>
> Pero te vas a complicar mas porque tendrias que ver si es control de
> texto o caja de texto etc
>
> Saludos
>
>
> ------------------------------------------------------------------------
> From: juanmor...@hotmail.com
> To: mundovis...@googlegroups.com
> Subject: [Mundo Visual FoxPro] Como puedo crear un array de objetos?
> Date: Thu, 25 Jun 2009 13:08:31 +0000
>
> Hola Zorritos
>
> *Juan Moreyra*
>
>
>
>
> ------------------------------------------------------------------------
> Disfruta antes que nadie del nuevo Windows Live Messenger
> <http://download.live.com/>
>
>
>
> ------------------------------------------------------------------------
> Diferentes formas de estar en contacto con amigos y familiares.
> Descúbrelas. Descúbrelas.
> <http://www.microsoft.com/windows/windowslive/default.aspx>
>
> >


Yvan GMAIL

unread,
Jun 26, 2009, 10:51:30 AM6/26/09
to mundovis...@googlegroups.com
Hola Juan,
 
El tema de arrays de textbox, labels lo he manejado en Visual Basic.. pero en visual fox no creo que se pueda.. Lo que si puedes hacer es usas "controls". pero este array contiene todos los objetos dentro del form. y como dice el amigo intel tendrias que diferenciar si es un textbox, label, etc.
 
 
 

__________ Información de ESET NOD32 Antivirus, versión de la base de firmas de virus 4192 (20090626) __________

ESET NOD32 Antivirus ha comprobado este mensaje.

http://www.eset.com

Reply all
Reply to author
Forward
0 new messages