Сохраняйте соотношение компонентов, используя GridBagLayout - PullRequest
0 голосов
/ 25 апреля 2020

У меня есть изображение размера (ширина, высота).

Я хочу сохранить соотношение изображения (высота = 1,2 * ширина).

Я хочу центрировать это изображение в контейнере. Таким образом, чтобы вокруг было пустое поле, можно установить максимальную ширину, равную 90% контейнера, и максимальную высоту, равную 90% контейнера.

Таким образом, изображение должно занимать все пространство может, но не может превышать 90% ширины или 90% высоты (его контейнера).

Вот структура кода:

JPanel panel = new JPanel();
panel.setLayout(new GridBagLayout());
ImageComponent blueDragon = new ImageComponent("my_image.png"); // A JPanel containing the image
GridBagConstraints c = new GridBagConstraints();
// Code
panel.add(blueDragon, c);

Как добиться описанного поведения? Спасибо

...