Desarrollo de una aplicación de visualización personalizado en la pantalla de un ordenador portátil

StackOverflow https://stackoverflow.com/questions/547171

  •  23-08-2019
  •  | 
  •  

Pregunta

Me encantaría crear una costumbre aplicación de visualización en pantalla de mi portátil, ya que el suministrado por el fabricante es una absoluta basura. Estoy fuera a escribir una aplicación que mostrará cosas tales como control de volumen, brillo de la pantalla, estado de la antena inalámbrica y así sucesivamente. No estoy seguro de qué información que necesitaría saber para empezar a crear algo como esto (interfaces para agarrar clave / pulsaciones de botón, la prioridad del sistema, cualquier otro dato pertinente) y me preguntaba si alguien me podría ayudar a apuntar en la dirección correcta. Si es posible me gustaría desarrollarlo en C #.

Por ejemplo, cuando tengo en la tecla "Fn" en mi teclado portátil y pulse la tecla "F5", se disminuye el volumen. Hay una representación visual de esta acción por medio de un gráfico en pantalla que muestra el nivel de sonido actual que se está disminuida. Quiero reemplazar el gráfico nativas porque, bueno, sólo que no me gusta:. D

¿Fue útil?

Solución

AutoHotKey para este propósito. El lenguaje de programación / marco es una especie de bicho raro, pero es muy potente y hay un montón de guiones libremente disponibles por ahí que hacen cosas increíbles (bueno, increíble si tenemos en cuenta el idioma ;-). Adam Pash (de LifeHacker.com) ha hecho un muy buen trabajo con AutoHotKey.

No he hecho nada con gráficos personalizados, pero esto es lo que mi código de control de volumen se ve como (está ligada a teclas de acceso rápido Win-Win-Minus Plus y).

#=::
    SoundSetWaveVolume, +5
    Gosub, osd
    Return

#-::
    SoundSetWaveVolume, -5
    Gosub, osd
    Return

;; onscreen display for volume control
osd:
    IfWinNotExist, volume
    {
        Progress, b1, volume:, , volume
    }
    WinSet, Transparent, 220, volume
    SoundGet, Volumelvl, wave, volume
    Transform, Volumelvl,  Round, %Volumelvl%
    Progress, %Volumelvl%, volume: %Volumelvl%`%
    SetTimer, osd_off, 1000
    Return

osd_off:
    Progress, off
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top