Установить размер значка вкладки JTabbedPane - PullRequest
0 голосов
/ 29 июня 2018

Есть ли способ легко установить размер иконки для вкладки JTabbedPane. Значок имеет тот же размер, что и исходное изображение, поэтому он выглядит очень смешно, занимая половину экрана.

Как бы я легко изменил масштаб этого значка, чтобы он соответствовал размеру моего текста "Настройки", и чтобы он выглядел нормально?

URL cogIconUrl = getClass().getResource("/images/cog.png");
ImageIcon cogImg = new ImageIcon(cogIconUrl);

JTabbedPane jtp = new JTabbedPane();
getContentPane().add(jtp);
JPanel jp1 = new JPanel();
jtp.addTab("Settings", cogImg,jp1);

Кроме того, как бы вы настроили шрифт текста вкладки? Я предполагаю, что эти два потенциально связаны.

1 Ответ

0 голосов
/ 29 июня 2018

Изменить размер изображения:

BufferedImage image = ImageIO.read(...);
Image scaled = image.getScaledInstance(...);
Icon icon = new ImageIcon( scaled );

Примечание: метод getScaledInstance(...) может быть не лучшим подходом, поскольку он медленный, но для одного изображения вы не заметите никаких проблем.

Вы можете прочитать Опасности Image.getScaledImage для получения дополнительной информации.

...