2010-10-19 65 views

Respuesta

41

minimizar con frame.setState(Frame.ICONIFIED)

restauración con frame.setState(Frame.NORMAL)

+0

qué setVisible (verdadero) trabajan para restaurar? – rogerdpack

+0

@rogerdpack no, funciona para mostrar (visualizar) ventana oculta, pero no para restaurar desde la minimización – cubanacan

8

puede hacer esto de dos maneras

JFrame frame = new JFrame("test"); 
frame.setExtendedState(JFrame.ICONIFIED); // one way 


    frame.setState(JFrame.ICONIFIED); // another way 
-1

Si usted está tratando de codificar para un evento de un componente a continuación, tratar código de abajo. Y asegúrese de que la clase que se incluye este código se prolonga por clase Frame

private void closeMouseClicked(java.awt.event.MouseEvent evt){       
    this.setState(1); 
} 

O crear una instancia de una clase de trama y llamar setstate (1);

+2

'this.setState (1);' reglas constantes mágicas, ¿por qué perder tiempo escribiendo 'JFrame.ICONIFIED' cuando puede escribir' 1 'directamente? :) – kajacx

+5

@kajacx Porque otros desarrolladores que trabajan en el proyecto no tienen idea de qué significa "1"; es críptico y daña la legibilidad, por eso –

+3

Además, si alguna vez deciden cambiar el valor de las constantes, su código se romperá sin ningún motivo aparente. Diviértete eliminando errores que – weeknie

-1

Puede utilizar siguiente código:

this.setState(YourJFrame.ICONIFIED); 

Y puede utilizar este código para maximizarlo:

this.setExtendedState(MAXIMIZED_BOTH); 
8

Minimizar:

frame.setState(Frame.ICONIFIED); 

Otra forma de reducir al mínimo:

frame.setExtendedState(JFrame.ICONIFIED); 

tamaño normal:

frame.setState(Frame.NORMAL); 

Otra forma de tamaño normal:

frame.setExtendedState(JFrame.NORMAL); 

Maximizar:

frame.setState(Frame.MAXIMIZED_BOTH); 

Otra manera de maximizar:

frame.setExtendedState(JFrame.MAXIMIZED_BOTH); 

completa de maximizar la pantalla:

GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); 
GraphicsDevice[] gs = ge.getScreenDevices(); 
GraphicsDevice myDevice = gs[0]; 
Window window = (Window) frame; 
try { myDevice.setFullScreenWindow(window); } finally { myDevice.setFullScreenWindow(null); } 

Consulte la JFrame documentation para más información.

0

Otro enfoque

frame.dispatchEvent(new WindowEvent(frame, WindowEvent.WINDOW_ICONIFIED)); 
+0

no funcionó. ICONIFICADO hizo. Tal vez estaba disparando el evento temprano, pero el otro funcionó. – momomo

Cuestiones relacionadas