girar la pantalla en el acer aspire 1825ptz con el botón programable

Como comentaba, me gusta decidir yo cuando se  gira la pantalla , por eso he desactivado el acelerometro, así con “ctrl-alt” mas las flechas del cursor, puedo decidir el giro de la pantalla,pero en modo tablet usar el teclado no es lo mas comodo del mundo, asi que sería bueno poder girar con el botón “P” (el unico accesible en modo tableta), que puede asociarse mediante el “launch manager” al programa que queramos… luego necesitaremos un programa para girar la pantalla.

Como no quiero complicarme la vida, no usaré ninguna API para la gestión de video, que seguro que la hay, y queda mas elegante, pero, ya que la forma de girar la pantalla con el acelerometro es mandar atajos de teclado al driver de video cada vez que detecta cambio de posición, yo voy a usar ese mismo acercamiento (lo se, es muy cutre, pero funciona). Tampoco quiero crear ninguna aplicación maravillosa, asi que una vez comprobado que vbs tiene sendkeys… decisión tomada.Cutre scrit en visual basic script.

La idea es que la pantalla gire cada vez que demos al botón. Yo he puesto las 4 posiciones posibles de giro. Para saber en q posición estoy (para girar a la siguiente)  guardo (y leo) un valor en el registro. (como digo la idea era no perder tiempo en esto, lo mismo aparte del ancho y alto hay una forma facil de conocer la posición de la pantalla, pero perdía mas tiempo googleando que haciendo esto, asi que…)

el codigo del script es el siguiente: (por supuesto, no me hago responsable de lo que os pase con él…)


Set oReg = CreateObject("Wscript.Shell")
'Definimos las variables necesarias
Dim valorGiro
dim atajo
'leemos (si existe) el ultimo giro realizado
'0 down
'1 right
'2 up
'3 left
on error resume next 'no es el mejor modo pero es VBS...
valorGiro=oReg.RegRead("HKCU\Software\Bingen\girar")
'si no existe la entrada, o algun otro problema de lectura, inicializamos la variable
if err.number <> 0 then
valorGiro=0
end if
'y para hacer el siguiente giro sumamos 1 y le hacemos el mod para que siga de 1 a 4
valorGiro=(valorGiro + 1) mod 4
'y en función del giro, el atajo de teclado que corresponde.Uso los predefinidos
select case valorGiro
case 0
atajo="^%{DOWN}"
case 1
atajo="^%{RIGHT}"
case 2
atajo="^%{UP}"
case 3
atajo="^%{LEFT}"
end select
'Escribimos el nuevo valor de la clave
oReg.RegWrite "HKCU\Software\Bingen\girar", valorGiro, "REG_DWORD"
'enviamos el atajo de teclado para girar la pantalla
oReg.SendKeys atajo
'Destruimos la variable de objeto
Set oReg = Nothing

Si otro día tengo mas tiempo/ganas, lo explico un poco mas y pongo enlaces de referencias y demas, pero, para que no quede en el olvido publico esto y ya veremos (aunque todos sabemos que finalmente quedará así)

3 Responses to “girar la pantalla en el acer aspire 1825ptz con el botón programable”


  1. 1 Félix 13 \13UTC mayo \13UTC 2010 a las 4:11 pm

    Muchas gracias me ha sido muy util todo esto.


  1. 1 girar la pantalla en el acer aspire 1825PTZ con el botón programable (II) « B Trackback en 24 \24UTC mayo \24UTC 2010 a las 9:52 pm

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




Enlaces en del.icio.us

Fotos en Flickr



patos0028

patos0027

patos0022

Más fotos

A %d blogueros les gusta esto: