Girar la ventana de la pocket

Girar la ventana de la pocket

Postby nolgiati » Wed Jul 04, 2007 8: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.
User avatar
nolgiati
 
Posts: 58
Joined: Fri Apr 20, 2007 1:38 pm

Postby Antonio Linares » Wed Jul 04, 2007 8:38 pm

Natalia,

usa las funciones LandScape() para horizontal y Portrait() para vertical
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41314
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby nolgiati » Wed Jul 04, 2007 9:07 pm

Antonio gracias lo voy a probar.
User avatar
nolgiati
 
Posts: 58
Joined: Fri Apr 20, 2007 1:38 pm

Postby JmGarcia » Wed Nov 05, 2008 9: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
User avatar
JmGarcia
 
Posts: 654
Joined: Mon May 29, 2006 3:14 pm
Location: Madrid - ESPAÑA

Postby Antonio Linares » Thu Nov 06, 2008 8:31 am

JM,

Aqui tienes el código de LandScape() y Portrait(). Como ves, es fácil construir nuevas funciones que giren como deseas:
Code: Select all  Expand view
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
User avatar
Antonio Linares
Site Admin
 
Posts: 41314
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby JmGarcia » Thu Nov 06, 2008 9: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:
Code: Select all  Expand view
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
User avatar
JmGarcia
 
Posts: 654
Joined: Mon May 29, 2006 3:14 pm
Location: Madrid - ESPAÑA

Postby JmGarcia » Sat Nov 15, 2008 7: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... :roll:
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
User avatar
JmGarcia
 
Posts: 654
Joined: Mon May 29, 2006 3:14 pm
Location: Madrid - ESPAÑA


Return to FiveWin para Pocket PC

Who is online

Users browsing this forum: No registered users and 5 guests