¿Dialogo que funcione como ventana?

Post Reply
User avatar
JoseAlvarez
Posts: 201
Joined: Sun Nov 09, 2014 5:01 pm

¿Dialogo que funcione como ventana?

Post by JoseAlvarez »

Hola a todos los foristas.
Saludos.

Hice un menu principal pero usando un cuadro de dialogo en lugar de una ventana.
Lo hice así por la facilidad de hacer los controles con recursos.
Ahora necesito resolver como hacer para que el dialogo se adapte a los diferentes tamaños de resolución de monitores.

Se puede "incrustar" un dialog dentro de una ventana y que funcionen como uno? quizás estoy hablando locuras con esto, pero es la mejor forma que encuentro para describir lo que necesito hacer.

Dejo una imagen de muestra. Este es el dialogo con el menu principal. Todo hecho con workshop.

Image
"Los errores en programación, siempre están entre la silla y el teclado..."
User avatar
Antonio Linares
Site Admin
Posts: 37485
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: ¿Dialogo que funcione como ventana?

Post by Antonio Linares »

José,

Prueba a usar este estilo en el diálogo: WS_OVERLAPPEDWINDOW

Añádelo en el fichero de recursos
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
JoseAlvarez
Posts: 201
Joined: Sun Nov 09, 2014 5:01 pm

Re: ¿Dialogo que funcione como ventana?

Post by JoseAlvarez »

Hola Antonio, saludos.

Ya lo intenté como me dijiste, pero no funciona.

Sigo buscando...
:D
"Los errores en programación, siempre están entre la silla y el teclado..."
User avatar
JoseAlvarez
Posts: 201
Joined: Sun Nov 09, 2014 5:01 pm

Re: ¿Dialogo que funcione como ventana?

Post by JoseAlvarez »

Hola Antonio,

Saludos Nuevamente...

Encontré la solución a lo que buscaba con la ayuda del amigo Giancarlo sabattino de acá de Venezuela también.

Finalmente solo hizo falta esto:

Code: Select all

  hWnd   := CreateDc( 'DISPLAY', ',' )
 nAlto  := GetDeviceCaps( hWnd,  10) //VERTRES )
 nAncho := GetDeviceCaps( hWnd,  8) //HORZRES )
 oDlg_MainMenu:SetSize( (nAncho), (nAlto) )
 oDlg_MainMenu:Move(0,0)
 oDlg_MainMenu:Refresh()

 
De esta forma, puedo manejar un cuadro de dialogo hecho desde recursos con WorkShop como si fuese una ventana en el sentido de que se ajuste automáticamente al tamaño de la pantalla según la resolución.

Gracias por la ayuda y la atención prestadas..

Hasta la próxima...

:D
"Los errores en programación, siempre están entre la silla y el teclado..."
User avatar
jnavas
Posts: 399
Joined: Wed Nov 16, 2005 12:03 pm
Location: Caracas - Venezuela
Contact:

Re: ¿Dialogo que funcione como ventana?

Post by jnavas »

oDlg:bInit:={||oDlgAjustar(oDlg)
ACTIVATE DIALOG oDlg

RETURN .T.

FUNCTION oDlgAjustar(oDlg)
LOCAL aCoors:=GetCoors( GetDesktopWindow() )
oDlg:Move(0,0,aCoors[3],aCoors[4],.T.)
RETURN .T.
User avatar
JoseAlvarez
Posts: 201
Joined: Sun Nov 09, 2014 5:01 pm

Re: ¿Dialogo que funcione como ventana?

Post by JoseAlvarez »

Excelente Juan,

Funciona perfecto también, aunque no abarca la pantalla completa como lo quiero, pero funciona muy bien y con menos código.

Creo que decantaré por esta opción.

Agradecido !

Muchas Gracias !

:D
"Los errores en programación, siempre están entre la silla y el teclado..."
User avatar
jnavas
Posts: 399
Joined: Wed Nov 16, 2005 12:03 pm
Location: Caracas - Venezuela
Contact:

Re: ¿Dialogo que funcione como ventana?

Post by jnavas »

José

Prueba con

ACTIVATE DIALOG oDlg ON INIT oDlgAjustar(oDlg)
User avatar
JoseAlvarez
Posts: 201
Joined: Sun Nov 09, 2014 5:01 pm

Re: ¿Dialogo que funcione como ventana?

Post by JoseAlvarez »

ya probé Juan.
Aún no se maximiza correctamente. Puede ser algo que tenga yo por este lado en el diseño.

Pero igual puedo aplicarlo para solucionar lo que necesitaba.

Gracias nuevaente por tu ayuda.
"Los errores en programación, siempre están entre la silla y el teclado..."
Post Reply