Свернуть окно в Swing - PullRequest
       31

Свернуть окно в Swing

0 голосов
/ 28 ноября 2011

Я создал фрейм и установил расширенное состояние на JFrame.MAXIMIZED_BOTH.Окно выглядит развернутым при запуске, но после того, как я нажал кнопку «Восстановить», оно изменяет размеры до окна нулевого размера только с верхней частью, которая содержит кнопки свертывания, разворачивания и закрытия.После этого я могу изменить размер окна вручную, и отображается содержимое.

Я хочу, чтобы мое окно было максимально развернуто при запуске, но не хочу его терять после нажатия кнопки восстановления.

Здесьэто код:

public class MyFrame extends JFrame { 
      public MyFrame() {
         //...
         setExtendedState(getExtendedState() | JFrame.MAXIMIZED_BOTH);        
         setVisible(true);
      }
}

Ответы [ 2 ]

2 голосов
/ 28 ноября 2011

Вы должны позвонить pack() до setVisible(true), чтобы убедиться, что предпочтительный размер рассчитан правильно. Я думаю, тогда восстановление должно работать правильно.

1 голос
/ 28 ноября 2011

Вероятно, вы должны попробовать это:

public class MyFrame extends JFrame { 
      public MyFrame() {
         //...
         setSize(500,400); // Watever size you want to set.
         setExtendedState(getExtendedState() | JFrame.MAXIMIZED_BOTH);        
         setVisible(true);
      }
}
...