Existen por lo menos dos métodos para poder abrir una aplicación swing a fullscreen.
La que mas me gusta, simplemente creamos un componente que herede de un JWindow, por ejemplo, y le asignamos las dimensiones de nuestra pantalla, esto funciona siempre:
[java]
public class pruebaFullScreen extends JWindow
…
public pruebaFullScreen()
{
this.setSize(Toolkit.getDefaultToolkit().getScreenSize());
this.setVisible(true);
this.setBackground(Color.YELLOW);
this.toFront();
this.setAlwaysOnTop(true);
}
[/java]
Y la otra la explica a la perfección Antonio Calero en javahispano http://www.javahispano.org/contenidos/es/aplicaciones_a_pantalla_completa:
[java]
// Primero obtenemos una referencia al entorno gráfico de ventanas
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
// Obtenemos una referencia al dispositivo gráfico primario
gd = ge.getDefaultScreenDevice();
// Si no hay soporte adecuado lo mostramos por pantalla
if(!gd.isFullScreenSupported()) System.out.println(“WARNING: No hay soporte.\n”);
else System.out.println(“INFO: Detectado soporte\n”);
try
{
// Activamos el modo a pantalla completa
gd.setFullScreenWindow(this);
}
catch(Throwable e)
{
e.printStackTrace();
}
[/java]
Comentar que utilizando esta opción y dependiendo del S.O. que utilicemos pueden haber elementos del sistema que se sigan situando por encima de nuestra aplicación swing como por ejemplo el menú de xfce.