O programa recebe emails enviados por celulares android, interpreta o XML que está neles e apresenta uma notificação no computador do cliente dizendo que ele recebeu um novo pedido.
Esse código foi muito útil:
import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.text.*; import java.util.Date; import java.lang.reflect.Method; import java.lang.reflect.InvocationTargetException; /** * Simple demo on how a translucent window * looks like when is used to display the system clock. * @author Oscar Reyes */ public class TranslucencyDemo extends JPanel implements ActionListener { private static final SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); private final Date now = new Date(); private final Timer timer = new Timer(1000, this); private final JLabel text = new JLabel(); public TranslucencyDemo() { super(true); timer.start(); } @Override public void actionPerformed(ActionEvent e) { now.setTime(System.currentTimeMillis()); text.setText(String.format("%s",sdf.format(now))); } public static void main(String[] args) { JFrame f = new JFrame(); setTranslucency( f ); f.setUndecorated( true ); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setBackground(new Color(0f, 0f, 0f, 1f / 3f)); f.add(new Translucent()); f.pack(); f.setVisible(true); } // taken from: http://java.sun.com/developer/technicalArticles/GUI/translucent_shaped_windows/ private static void setTranslucency( Window window){ try { Class awtUtilitiesClass = Class.forName("com.sun.awt.AWTUtilities"); Method mSetWindowOpacity = awtUtilitiesClass.getMethod("setWindowOpacity", Window.class, float.class); mSetWindowOpacity.invoke(null, window, Float.valueOf(0.75f)); } catch (NoSuchMethodException ex) { ex.printStackTrace(); } catch (SecurityException ex) { ex.printStackTrace(); } catch (ClassNotFoundException ex) { ex.printStackTrace(); } catch (IllegalAccessException ex) { ex.printStackTrace(); } catch (IllegalArgumentException ex) { ex.printStackTrace(); } catch (InvocationTargetException ex) { ex.printStackTrace(); } } }Fonte: http://stackoverflow.com/questions/3240415/how-to-create-a-notification-in-swing
Esse exemplo mostra a data em períodos pré-determinados. Você pode condicionar essa exibição. No meu caso a condição era a chegada de um novo email.
Esse é o resultado do código:
Vc pode altera a tela, a sua localização, seus componentes, criar um Listener pra abrir seu programa quando o usuário clicar nela. Enfim, usem a criatividade :D
Outro projeto interessante para o mesmo fim é o Twinkle: http://www.swingfx.ch/twinkle
Deem uma olhada. Mas ele não pode ser usado com propósitos comerciais :(
Mas é muito bom e fácil de usar! Vejam aqui: http://blog.swingfx.ch/
Espero que seja útil!