Pregunta

Esta es mi primera publicación en Stack Overflow y me pregunto sobre las opciones para hacer una aplicación de bandeja del sistema. La aplicación se ejecutaría primariamente desde la bandeja del sistema mientras aún funcionaba, y podría abrirse en una ventana al hacer clic en ella. También es necesario tener algún soporte para el seguimiento global de pulsaciones de teclas, para que aparezca una ventana.

Tengo curiosidad por saber qué opciones tengo disponibles, ya que estoy seguro de que hay muchas maneras de hacerlo. Estoy más familiarizado con Java, aunque tengo algo de experiencia con C ++. Estoy dispuesto a explorar otros idiomas si tienen algunos beneficios definidos para ellos, aunque sería bueno trabajar con lo que sé de alguna manera.

Gracias

¿Fue útil?

Solución

Java 6 tiene una nueva funcionalidad que permite la creación de aplicaciones que utilizan la bandeja del sistema.

El Nueva funcionalidad de la bandeja del sistema en Java SE 6 el artículo entra en detalles y también proporciona algunos códigos de muestra.

El recién agregado SystemTray y TrayIcon clases de El paquete java.awt se puede usar para agregar iconos a la bandeja del sistema. Los íconos pueden responder a los clics del mouse y también usar menús emergentes. Sin embargo, esta nueva funcionalidad es parte de AWT, por lo que no hace un muy buen trabajo al integrarse con los componentes Swing.

Aquí hay un ejemplo de un pequeño reloj que aparece en la bandeja del sistema que se hizo usando las clases SystemTray y TrayIcon en Java 6:

 Aplicación de reloj de la bandeja del sistema en Java
(fuente: coobird.net )

Otros consejos

Winforms simple y llana obtendría mi voto.

Si está familiarizado con Java, debería tener pocas dificultades para usar uno de los lenguajes administrados para crear una aplicación de bandeja simple con .NET.

Aquí hay algunos consejos sobre la forma correcta de crear una aplicación de bandeja.

Tenga cuidado con las aplicaciones administradas y Java aquí. Las aplicaciones de bandeja se ejecutan todo el tiempo. Entonces, si están mal escritos, entonces pueden usar suficientes recursos del sistema para interferir con otras cosas.

No hay nada malo con el código administrado o Java en general, pero puede ser más difícil mantener administradas o aplicaciones Java frugales con memoria, E / S y tiempo de CPU.

Lo digo como gerente de desarrollo en el equipo de rendimiento de Windows: hemos visto muchas aplicaciones de bandeja muy cerdito. Sí, algunas son incluso aplicaciones de Windows o MSFT.

Puede ser un mejor enfoque escribir una aplicación de bandeja muy pequeña y liviana que inicie un proceso más rico cuando el usuario lo necesite. Puede escribir su aplicación de prueba en C ++ simple justo encima de las API Win32 de bajo nivel. Si no desea utilizar las API de Win32 directamente, puede utilizar la Biblioteca de plantillas de Windows .

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