【发布时间】:2017-05-09 15:35:59
【问题描述】:
我有一个我想在 JButton 和其他地方使用的图标,使用其他尺寸。那么有什么方法可以调整大小(比如button.setIconSize(124, 124); 相同的图标,但没有两个?
【问题讨论】:
-
图标是按照实际大小绘制的,所以如果你想要不同大小的图标,那么你需要创建多个图标。
我有一个我想在 JButton 和其他地方使用的图标,使用其他尺寸。那么有什么方法可以调整大小(比如button.setIconSize(124, 124); 相同的图标,但没有两个?
【问题讨论】:
ImageIcon imageIcon = new ImageIcon("picture_Path"); //unscaled image
Image image = imageIcon.getImage();
Image newimg = image.getScaledInstance(newWidth, newHeight, java.awt.Image.SCALE_SMOOTH); // resize it here
imageIcon = new ImageIcon(newimg); // transform it back
所以它会像
JButton.setIcon(imageIcon(...));
【讨论】:
图标是按照它们的实际大小绘制的,所以如果你想要不同大小的图标,那么你需要创建多个图标。您添加图标的组件的首选大小将始终基于图标的大小。
如果您希望Icon 能够随着其父组件大小的调整而动态缩放,那么您可以使用Stretch Icon。
【讨论】:
getPreferred/Minimum/MaximumSize受按钮影响