Я пытаюсь создать JFrame, который запоминает положение своего окна, размер и было ли оно развернуто или нет. Должно быть достаточно просто использовать WindowListener для события windowClosing и сохранить его границы в Preferences.
Чтобы это работало (как указано ниже), мне нужно было бы извлечь нормальные границы JFrame (NORMAL ExtendedState), пока он развернут (MAXIMIZED_BOTH ExtendedState). Это вообще возможно? Учитывая, что нормальные границы где-то хранятся, чтобы вернуться обратно.
//...
addWindowListener(new WindowListener() {
///...
@Override
public void windowClosing(WindowEvent e) {
prefs.putBoolean("win_max",win_max);
if(winmax)
{
//win_x=?
//win_y=?
//win_w=?
//win_h=?
}
else
{
win_x=getX();
win_y=getY();
win_w=getWidth();
win_h=getHeight();
}
prefs.putInt("win_x",win_x);
prefs.putInt("win_y",win_y);
prefs.putInt("win_w",win_w);
prefs.putInt("win_h",win_h);
}
});
//...
Прошу прощения, если это действительно простой вопрос. Любая помощь приветствуется.