Página 1 de 1
Cosas simples que no entiendo
Publicado: Dom Ene 28, 2007 5:20 pm
por Fernando Leal
Hola gente,
gracias por la paciencia para los novatos como yo. Sigo con preguntas muy
básicas.
Tengo un form1, en ese tengo un botón "Siguiente". Agrego a mi proyecto otro
formulario Form2.
Pregunta. ¿Cómo hago para que al hacer click en el botón "Siguiente"
aparezca el Form2. Ya ví el ejemplo Visor donde através del menú se
presenta un formulario... pero no he conseguido hacerlo através de un botón.
Otra. Para cerrar un formulario, pues solo pongo un botón "Cancelar" con la
propiedad lCancel a .T. ¿Esa es la forma correcta para cerrar un
formulario?
Ha de ser una tontería lo que pregunto... pero mejor preguntar y no
abandonar el aprendizaje.
Gracias
Fernando
Cosas simples que no entiendo
Publicado: Dom Ene 28, 2007 6:12 pm
por jrcpoli-quitar
Fernando Leal escribió:
> Hola gente,
> gracias por la paciencia para los novatos como yo. Sigo con preguntas muy
> básicas.
>
> Tengo un form1, en ese tengo un botón "Siguiente". Agrego a mi proyecto otro
> formulario Form2.
> Pregunta. ¿Cómo hago para que al hacer click en el botón "Siguiente"
> aparezca el Form2. Ya ví el ejemplo Visor donde através del menú se
> presenta un formulario... pero no he conseguido hacerlo através de un botón.
Pues en el evento OnClick del botón pon lo mismo que pones cuando lo
llamas desde el menú.
Por ejemplo
METHOD SiguienteClick( oSender ) CLASS TForm1
** La llamada al Form2
Nombredelform2():New( ::oForm, ó Self, Application:oMainForm
):ShowModal() ó Show() si no es Modal
RETURN Nil
>
> Otra. Para cerrar un formulario, pues solo pongo un botón "Cancelar" con la
> propiedad lCancel a .T. ¿Esa es la forma correcta para cerrar un
> formulario?
Porque no miras las variables que hay dentro de nModalResult
También puedes capturar el evento OnClick del botón y ponerle
::oForm:lClose := .T. en algunos casos que tienes que poner código en el
botón Cerrar y luego de ejecutarse cerrar el formulario.
>
> Ha de ser una tontería lo que pregunto... pero mejor preguntar y no
> abandonar el aprendizaje.
>
> Gracias
> Fernando
>
>
>
Cosas simples que no entiendo
Publicado: Dom Ene 28, 2007 7:09 pm
por jrcpoli-quitar
José Ramón Castro Polinio escribió:
> Fernando Leal escribió:
>> Hola gente,
>> gracias por la paciencia para los novatos como yo. Sigo con preguntas
>> muy básicas.
>>
>> Tengo un form1, en ese tengo un botón "Siguiente". Agrego a mi
>> proyecto otro formulario Form2.
>> Pregunta. ¿Cómo hago para que al hacer click en el botón "Siguiente"
>> aparezca el Form2. Ya ví el ejemplo Visor donde através del menú se
>> presenta un formulario... pero no he conseguido hacerlo através de un
>> botón.
>
> Pues en el evento OnClick del botón pon lo mismo que pones cuando lo
> llamas desde el menú.
>
> Por ejemplo
> METHOD SiguienteClick( oSender ) CLASS TForm1
>
> ** La llamada al Form2
> Nombredelform2():New( ::oForm, ó Self, Application:oMainForm
> ):ShowModal() ó Show() si no es Modal
>
> RETURN Nil
>>
>> Otra. Para cerrar un formulario, pues solo pongo un botón "Cancelar"
>> con la propiedad lCancel a .T. ¿Esa es la forma correcta para cerrar
>> un formulario?
> Porque no miras las variables que hay dentro de nModalResult
>
> También puedes capturar el evento OnClick del botón y ponerle
> ::oForm:lClose := .T. en algunos casos que tienes que poner código en el
> botón Cerrar y luego de ejecutarse cerrar el formulario.
En esta parte se me olvido decirte que el evento que controla el cierre
del formulario es OnClose por lo tanto si le das a la X de formulario,
el evento que controla si se cierra o no es este por lo tanto puedes
decidir si cerrarlo o no o simplemente poner a True la variable que pasa
y se cerrará.
Ejemplo
METHOD FormClose( oSender, lClose ) CLASS TFormMenu
*
lClose := .F.
*
IF MsgNoYes("¿Deseas Abandonar la aplicación.?", "Información del
sistema")
DBCOMMITALL()
DBCLOSEALL()
//QUIT
lClose := .T.
ENDIF
*
RETURN lClose
>>
>> Ha de ser una tontería lo que pregunto... pero mejor preguntar y no
>> abandonar el aprendizaje.
>>
>> Gracias
>> Fernando
>>
>>
>>
Cosas simples que no entiendo
Publicado: Dom Ene 28, 2007 7:48 pm
por jrcpoli-quitar
José Ramón Castro Polinio escribió:
> Fernando Leal escribió:
>> Hola gente,
>> gracias por la paciencia para los novatos como yo. Sigo con preguntas
>> muy básicas.
>>
>> Tengo un form1, en ese tengo un botón "Siguiente". Agrego a mi
>> proyecto otro formulario Form2.
>> Pregunta. ¿Cómo hago para que al hacer click en el botón "Siguiente"
>> aparezca el Form2. Ya ví el ejemplo Visor donde através del menú se
>> presenta un formulario... pero no he conseguido hacerlo através de un
>> botón.
>
> Pues en el evento OnClick del botón pon lo mismo que pones cuando lo
> llamas desde el menú.
>
> Por ejemplo
> METHOD SiguienteClick( oSender ) CLASS TForm1
>
> ** La llamada al Form2
> Nombredelform2():New( ::oForm, ó Self, ó Application:oMainForm
> ):ShowModal() ó Show() si no es Modal
>
> RETURN Nil
>>
>> Otra. Para cerrar un formulario, pues solo pongo un botón "Cancelar"
>> con la propiedad lCancel a .T. ¿Esa es la forma correcta para cerrar
>> un formulario?
> Porque no miras las variables que hay dentro de nModalResult
>
> También puedes capturar el evento OnClick del botón y ponerle
::oForm:Close()
en algunos casos que tienes que poner código en el
botón Cerrar y luego de ejecutarse cerrar el formulario.
Sería algo así como
METHOD BotonCerrarClick() CLASS Form1
** Aquí podrías poner el código antes de cerrarlo.
**
**
::oForm:Close()
*
RETRUN nil
>>
>> Ha de ser una tontería lo que pregunto... pero mejor preguntar y no
>> abandonar el aprendizaje.
>>
>> Gracias
>> Fernando
>>
>>
>>
Cosas simples que no entiendo
Publicado: Dom Ene 28, 2007 8:51 pm
por Fernando Leal
Ramón,
Ha funcionado a la primera.
TForm2():New( Self ):ShowModal()
Gracias
Fernando