Tengo un problema con dos listas en visual foxpro 9

Hola, bueno el problema es el siguiente, tengo dos listas en VFP en un mismo formulario y quiero poder hacer el contenido de ambas dinámico, me explico mejor, es decir, que yo pueda pasar elementos del rowsorce de una a la otra y viceversa. Pero que las que yo pase de un lado hacia el otro desaparezca del lado original.
Gracias

1 Respuesta

Respuesta
1
Por lo extenso que va ser la respuesta te prepare un ejemplo que aquí pego, copias y pones en un PRG y lo ejecutas, miras los eventos de los dos botones para ver como se hace el tema, el problema es que no me fije que habías mencionado list y yo hice en grid, pero lo único que cambiara es recordsource='' por rowsource='', y rowsourcetype=2, solo eso
PUBLIC oform1
oform1=NEWOBJECT("form1")
oform1.Show
RETURN
**************************************************
*-- Form: form1 (c:\util\vfp\todoexpertos\grid2.scx)
*-- ParentClass: form
*-- BaseClass: form
*
DEFINE CLASS form1 AS form
Top = 62
Left = 86
Height = 300
Width = 815
DoCreate = .T.
Caption = "Form1"
Name = "Form1"
ADD OBJECT grid1 AS grid WITH ;
DeleteMark = .F., ;
Height = 200, ;
Left = 12, ;
Top = 60, ;
Width = 320, ;
Name = "Grid1"
ADD OBJECT grid2 AS grid WITH ;
DeleteMark = .F., ;
Height = 200, ;
Left = 456, ;
Top = 60, ;
Width = 320, ;
Name = "Grid2"
ADD OBJECT command1 AS commandbutton WITH ;
Top = 120, ;
Left = 348, ;
Height = 27, ;
Width = 84, ;
Caption = ">>", ;
Name = "Command1"
ADD OBJECT command2 AS commandbutton WITH ;
Top = 148, ;
Left = 348, ;
Height = 27, ;
Width = 84, ;
Caption = "<<", ;
Name = "Command2"
PROCEDURE Load
set delete on
create cursor x(campo1 c(30))
for c=1 to 7
se le x
append blank
replace campo1 with cdow(date()+c)
endfor
go top
create cursor y(campo1 c(30))
ENDPROC
PROCEDURE grid1.Init
this.recordsource = 'x'
ENDPROC
PROCEDURE grid2.Init
this.recordsource = 'y'
ENDPROC
PROCEDURE command1.Click
sele x
xDato = campo1
delete
se le y
append blank
replace campo1 with xDato
ThisForm.Grid1.refresh
ThisForm.Grid2.refresh
ENDPROC
PROCEDURE command2.Click
sele y
delete
ThisForm.Grid2.refresh
ENDPROC
ENDDEFINE
*
*-- EndDefine: form1
**************************************************
Hola de nuevo, muchas gracias por la información me sirve de mucho para algo que estoy haciendo para la universidad, bueno esas listas la necesito para que el usuario puede organizar un reporte por las categorías que necesite y que pueda elegir más de una, ademas no sabia que se podía hacer un form solo con puro código es algo nuevo para mi. Bueno te cuidas y muchísimas gracias...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas