• Martes 21 de Mayo de 2024, 03:31

Autor Tema:  FORMULARIO MODAL EN VISUAL C++  (Leído 2213 veces)

juanjuanjuan

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
FORMULARIO MODAL EN VISUAL C++
« en: Martes 5 de Mayo de 2009, 04:15 »
0
BUENAS NOCHES TENGO UNA CONSULTA. ES EN VISUAL C++ 2008
TENGO UN FORMULARIO PADRE Y UNO HIJO.
EN EL PADRE TENGO UNA GRILLA Y QUIERO MOSTRARLA EN EL HIJO APRETANDO UN BOTON.
ADEMAS, QUIERO QUE EL HIJO SEA DE TIPO MODAL.
HE VISTO DOS SOLUCIONES:
1. HACER EL PADRE MDICONTAINER DEL HIJO, PERO DE ESTA MANERA ME ES IMPOSIBLE MOSTRAR EL FORMULARIO COMO MODAL.(No puedo usar showdialog)
2.NO HACERLO MDICONTAINER, PERO DE ESTA MANERA ME ES IMPOSIBLE ACCEDER A LA GRILLA DEL PADRE DESDE EL HIJO.( las propiedades del padre no aparecen en el owner del hijo)

ESPERO SU AYUDA MUCHAS GRACIAS!!!!!

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: FORMULARIO MODAL EN VISUAL C++
« Respuesta #1 en: Martes 5 de Mayo de 2009, 23:23 »
0
Lo 1º es indicarte que este es el foro de VB no de C.
Lo 2º es preguntarte por qué escribes en mayúsculas...

En cuanto a tu problema, lo puedes solucionar fácilmente con la api SetParent
1 Al formulario modal le cambias la propiedad visible a false,
2 Haces el showdialog al formulario modal,
3 Haces el setparent del control, si el control no tiene hwnd, mételo en un contenedor (por ejemplo un picturebox) y se lo aplicas a este. Debes hacer pública una función del formulario padre o friend, a la que invocas.
4 Reubica la posición del control, si fuera necesario
5 Ahora haces visible el formulario modal.

Al terminar, antes de cerrar el formulario modal, debes volver a hacer un setparent en la dirección opuesta (origen y destino se intercambian).
«Ma non troppo»
----> ModoVacaciones = False<----

juanjuanjuan

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: FORMULARIO MODAL EN VISUAL C++
« Respuesta #2 en: Miércoles 6 de Mayo de 2009, 00:41 »
0
Gracias por responder.
Tengo una duda, como uso la funcion SetParent ?
he intentado incluir  Winuser.h y  Windows.h pero obtengo errores( en las mismas librerias)

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: FORMULARIO MODAL EN VISUAL C++
« Respuesta #3 en: Jueves 7 de Mayo de 2009, 19:51 »
0
Me cito... por si no te enteraste la 1ª vez..
Cita de: "Nebire"
Lo 1º es indicarte que este es el foro de VB no de C.

Sobre porqué no te 'admite' los include, es mejor que lo preguntes en el foro de C# : viewforum.php?f=50 o en el de C, C++ : viewforum.php?f=18  que para eso están... quizás no los hayas visto, aveces ocurre tenerlo delante de las narices y no verlo.
«Ma non troppo»
----> ModoVacaciones = False<----