FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Pocket PC Girar la ventana de la pocket
Posts: 58
Joined: Fri Apr 20, 2007 01:38 PM
Girar la ventana de la pocket
Posted: Wed Jul 04, 2007 08:21 PM

Hola a todos...molesto nuevamente con otra pregunta.

Vi por ahi que existe una manera de indicarle a la pocket desde el codigo que esconda o muetre su teclado.

Mi pregunta es si existe algo similar pero que al ingresar a mi aplicacion corriendo en la pocket automaticamente me gire la pantalla de la misma, o sea, me muestre la pantalla en forma horizontal y no vertical.

Gracias a todos!
Natalia Olgiati.

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Girar la ventana de la pocket
Posted: Wed Jul 04, 2007 08:38 PM

Natalia,

usa las funciones LandScape() para horizontal y Portrait() para vertical

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 58
Joined: Fri Apr 20, 2007 01:38 PM
Girar la ventana de la pocket
Posted: Wed Jul 04, 2007 09:07 PM

Antonio gracias lo voy a probar.

Posts: 654
Joined: Mon May 29, 2006 03:14 PM
Girar la ventana de la pocket
Posted: Wed Nov 05, 2008 09:30 PM
Antonio Linares wrote:usa las funciones LandScape() para horizontal y Portrait() para vertical

La función LandScape() gira 90º a la derecha y la Portrait() a la izquierda, a 0º, hasta aquí bien. Pero yo pregunto ¿ Como girar 180º o 270º ?
Mi abuelo decía: Los aviones vuelan porque Dios quiere, y los helicópteros ni Dios sabe porque vuelan.

FWH 16.02, xHarbour 1.2.3, Harbour 3.2.0, WorkShop 4.5, AJ Make 0.30, Borlan BCC 7.00, VisualStudio 2013
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Girar la ventana de la pocket
Posted: Thu Nov 06, 2008 08:31 AM
JM,

Aqui tienes el código de LandScape() y Portrait(). Como ves, es fácil construir nuevas funciones que giren como deseas:
HB_FUNC( LANDSCAPE ) // turns the display into landscape
{
   DEVMODE devmode;
   
   memset( &devmode, 0, sizeof( devmode ) );
   devmode.dmSize = sizeof( DEVMODE );
   devmode.dmDisplayOrientation = DMDO_90; //landscape mode
   devmode.dmFields = DM_DISPLAYORIENTATION;
   ChangeDisplaySettingsEx( NULL, &devmode, NULL, 0, NULL );
}

HB_FUNC( PORTRAIT ) // turns the display into portrait
{
   DEVMODE devmode;
   
   memset( &devmode, 0, sizeof( devmode ) );
   devmode.dmSize = sizeof( DEVMODE );
   devmode.dmDisplayOrientation = DMDO_0; // portrait mode
   devmode.dmFields = DM_DISPLAYORIENTATION;
   ChangeDisplaySettingsEx( NULL, &devmode, NULL, 0, NULL );
}
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 654
Joined: Mon May 29, 2006 03:14 PM
Girar la ventana de la pocket
Posted: Thu Nov 06, 2008 09:04 AM
He encontrado estas variables de include:
DMDO_DEFAULT=0
DMDO_270=3
DMDO_180=2
DMDO_90=1
DMDO_0= ¿?

Supongo que son estas las que hay que tocar.

Ahora me surge una duda.
Con esta funcion:
if oWnd:nWidth>oWnd:nHeight
   // Esta en apaisado
else
   // Esta en vertical
endif
Detecto si esta en vertical o apaisado, pero mi duda es como saber si esta la pantalla en 0º o 180º, o como esta en 90º o 270º.
Mi abuelo decía: Los aviones vuelan porque Dios quiere, y los helicópteros ni Dios sabe porque vuelan.

FWH 16.02, xHarbour 1.2.3, Harbour 3.2.0, WorkShop 4.5, AJ Make 0.30, Borlan BCC 7.00, VisualStudio 2013
Posts: 654
Joined: Mon May 29, 2006 03:14 PM
Girar la ventana de la pocket
Posted: Sat Nov 15, 2008 07:12 PM
JmGarcia wrote:...pero mi duda es como saber si esta la pantalla en 0º o 180º, o como esta en 90º o 270º.

Ups... :-)
Mi abuelo decía: Los aviones vuelan porque Dios quiere, y los helicópteros ni Dios sabe porque vuelan.

FWH 16.02, xHarbour 1.2.3, Harbour 3.2.0, WorkShop 4.5, AJ Make 0.30, Borlan BCC 7.00, VisualStudio 2013

Continue the discussion