Это действительно не вопрос Java, а вопрос дизайна пользовательского интерфейса. Приложение, которое я сейчас разрабатываю, требует как минимум 1024 на 768, чтобы соответствовать всем требованиям. Но если ему не нужно пространство, то зачем начинать с такого размера? Почему бы не позволить пользователю развернуть окно, если он хочет? Пользовательский интерфейс должен работать на максимально возможном количестве разных размеров дисплея.
Моя политика заключается в том, что лучший размер окна - это наименьший размер, который все еще позволяет пользователю делать все, что ему нужно делать с программой.
Теперь вернемся к Java: при создании Swing-приложения вызовите pack () после помещения всех компонентов в контейнеры. Если по какой-то причине я чувствую, что стая слишком сильно затягивает, то я могу добавить немного ширины или высоты сразу после вызова стека.
Если вам нужно узнать размеры дисплея, на котором вы работаете, используйте это:
Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension screensize = toolkit.getScreenSize();
С помощью swing вы также можете установить предпочтительный размер для компонентов, и это будет влиять на размер, который они занимают после вызова pack ().