2012-01-02 24 views
21

estoy usando el siguiente código para la práctica,Cómo quitar la barra de título en JFrame

http://docs.oracle.com/javase/tutorial/uiswing/examples/layout/BorderLayoutDemoProject/src/layout/BorderLayoutDemo.java

También agrego

frame.setSize(frame.getMaximumSize()); 

en createAndShowGUI método(),

Lo Es más, quiero que esta ventana no tenga la barra de título, cierre y minimice los botones.

Probé el siguiente código,

frame.setUndecorated(true); 
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

Si añadí este código antes de que el paquete(), entra en bucle Infine con esta excepción Excepción en hilo java.lang "AWT-EventQueue-0" .NegativeArraySizeException

Si añade la última línea de createAndShowGUI() método que arroja Excepción en hilo java.awt.IllegalComponentStateException "AWT-EventQueue-0": el marco es visualizable.

¿Qué debo hacer?

Gracias.

Respuesta

32
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Already there 
    frame.setExtendedState(JFrame.MAXIMIZED_BOTH); 
    frame.setUndecorated(true); 
+1

muchas gracias, que funciona con el tamaño máximo – CanCeylan

+1

muchas gracias trabajando bien –

+2

Esto solo funciona si desea maximizar su marco. Si no lo hace, asegúrese de establecer Undecorado (verdadero) antes de empacar el marco. –

5

Bueno, el siguiente fragmento de código en createAndShowGUI() trabajó para mí:

JFrame frame = new JFrame("BorderLayoutDemo"); 
frame.setUndecorated(true); // Remove title bar 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
addComponentsToPane(frame.getContentPane()); 
frame.pack(); 
frame.setVisible(true); 

Tenga en cuenta que no estoy seguro de lo que estamos tratando de lograr ajustando manualmente el tamaño de una trama no realizada a su tamaño máximo , que será (0, 0) inicialmente.

+0

sí, eso es correcto, gracias! después de eliminar el setSize, funcionó. Pero no pude entender cómo debería establecer el tamaño de la instancia de JFrame en (0, 0)? – CanCeylan

Cuestiones relacionadas