Formularios en visual foxpro 9.0

163 views
Skip to first unread message

Fernando Cigolotti

unread,
Aug 26, 2025, 6:09:04 AM (12 days ago) Aug 26
to Comunidad de Visual Foxpro en Español
Si alguien puede ayudarme, deberia ser sensillo, pero ninguna AI me pudo ayudar con esto, ni copilot, ni chatgpt, ni gemini,
El asunto es el siguiente, tengo un formulario padre oil_type, y con un boton ok, abro otro formulario hijo (print_label_yes_no), tambien tiene un boton de ok y cancelar, al hacer clic en ok, debería cerrar los dos formularios.
En todas las pruebas que hice con las IA, o me cerraba el formulario padre, y quedaba el hijo esperando, al hacer clic otraq vez se cierra, no es la idea. O se cierra el formulario hijo y queda el padre esperando  queda en bucle

Prasanna Kunder

unread,
Aug 26, 2025, 6:33:27 AM (12 days ago) Aug 26
to publice...@googlegroups.com
Dear Sir

if oil_type form is model and print_label_yes_no form is model
or just print_label_yes_no) form is model, you can do with public variable

if oil_type form define variable

With in  oil_type form 
&& in ok button valid events
public xCloseBothForm 
xCloseBothForm = .f.
       Do Form print_label_yes_no && call the model form
if   xCloseBothForm = .t.     
      thisform.release()
endif 

&& with in print_label_yes_no form 
&& in ok and close button valid events
xCloseBothForm = .t.
thisform.release()


Not tested 

  



--
Blog de la Comunidad Visual FoxPro en Español http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver este debate, visita https://groups.google.com/d/msgid/publicesvfoxpro/bb013edc-dbe9-4c42-b10d-6bada029b544n%40googlegroups.com.


--
Thanks
With Regards,
Prasanna

M/s. Two Star
Plot.No. 286 Near New Anand Soc.,
Behind Welcome Motor Traning School.,
Pant Nagar, Ghatkopar (East).
Mumbai
9029292725 * 9869303398



Victor Espina

unread,
Aug 26, 2025, 4:34:12 PM (12 days ago) Aug 26
to Comunidad de Visual Foxpro en Español
oil_type.cmdOk.Click:
     LOCAL oParams
     oParams = CREATE("Empty")
     ADDPROPERTY(oParams,"closeFlag", .F.)
     DO FORM print_label_yes_no WITH oParams
     IF oParams.closeFlag
         THISFORM.Release()
     ENDIF

print_label_yes_no.Init:
     LPARAMETERS poParams
     THISFORM.addProperty("Params",oParams)

print_label_yes_no.cmdOk.Click:
      THISFORM.PArams.closeFlag = .T.
      THISFORM.Release()


Saludos

Victor Espina

Trento

unread,
Aug 26, 2025, 11:35:26 PM (11 days ago) Aug 26
to Comunidad de Visual Foxpro en Español
Amén de lo que posteó Víctor, quiero entender bien y ya me corriges.

1.- Form1 manda llamar a Form2 desde un cmdButton
2.- Form2 se activa a partir de Form1. Tiene 2 cmdButtons:
    cmdOk = Debe cerrar tanto Form2 como Form1 que lo instanció.
    cmdCancelar = Pues nada, que se queda en Form2... ¿o qué? ¿Debiera también cerrarse y enviarle un valor de retorno a Form1?

Otra cuestión: ¿Form2 deberá ser modal si es dependiente de Form1?  Si es no-modal, pues bien que puedo dar clic en cerrar Form1 y Form 2 seguirá allí... ¿para qué?

Y en si... ¿qué función cumplen esos 2 forms?

Saludos.

Victor Espina

unread,
Aug 27, 2025, 12:35:13 PM (11 days ago) Aug 27
to Comunidad de Visual Foxpro en Español
Por el nombre del 2do form lo mas probable es que se trate de un dialogo de confirmacion personalizado, al cual se le pasa el texto a mostrar y permite que el usuario escohja entre SI y NO, por lo tanto lo mas probable es que si sea modal.   Partiendo de ahi, el comportamiento logico es que en el form padre se invoque este dialogo para confirmar una operacion;  si el usuario selecciona SI se espera que el dialogo de confirmacion se cierre y se ejecute el proceso.  Ahora, digamos que el dialogo padre TAMBIEN es modal y lo que esta haciendo es pedir parametros para ese proceso.  En ese caso, al confirmar con el 2do form, es logico esperar que se cierre no solo el dialogo de confirmacion sino el dialogo de parametros y vuelva al programa principal donde se realizara el proceso.

Saludos

Victor Espina

Zarlu

unread,
Aug 27, 2025, 1:05:51 PM (11 days ago) Aug 27
to Comunidad de Visual Foxpro en Español
Buenos días Fernando!

Adjunto proyecto ejemplo. Elimina el "2" de las extensiones de los archivos de los formularios.
Ejecuta program1.prg

El segundo formulario no debe ser modal.

Suerte
zarlu
Chetumal, Quintana Roo, México
cerrar_padre.zip

Fernando Cigolotti

unread,
Aug 27, 2025, 3:42:41 PM (11 days ago) Aug 27
to Comunidad de Visual Foxpro en Español
Gracias a todos ya pude resolver el problema, hay veces que cuando uno tiene un problema, esta convencido que esta donde estamos trabajando, pero mi problema venia de mas atras, gracias de todos modos
Fernando
Reply all
Reply to author
Forward
0 new messages