Page 1 of 1
Girar la ventana de la pocket
Posted: Wed Jul 04, 2007 8:21 pm
by nolgiati
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.
Posted: Wed Jul 04, 2007 8:38 pm
by Antonio Linares
Natalia,
usa las funciones LandScape() para horizontal y Portrait() para vertical
Posted: Wed Jul 04, 2007 9:07 pm
by nolgiati
Antonio gracias lo voy a probar.
Posted: Wed Nov 05, 2008 9:30 pm
by JmGarcia
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º ?
Posted: Thu Nov 06, 2008 8:31 am
by Antonio Linares
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
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 );
}
Posted: Thu Nov 06, 2008 9:04 am
by JmGarcia
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
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º.
Posted: Sat Nov 15, 2008 7:12 pm
by JmGarcia
JmGarcia wrote:...pero mi duda es como saber si esta la pantalla en 0º o 180º, o como esta en 90º o 270º.
Ups...