2017-05-09 14 views
0

我有一个图标,我想在JButton上使用其他地方,使用其他尺寸。那么有没有什么办法可以调整大小(比如button.setIconSize(124, 124);同样的图标,而没有其中的两个?)如何调整大小Swing JButon的图标

+2

图标是以其实际大小绘制的,所以如果你想要不同大小的图标,那么你需要创建多个图标。 – camickr

回答

0
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(...)); 
0

图标被绘制为它们的实际大小,所以如果你想要不同大小的图标,那么你需要创建多个图标。您添加图标组件的大小如果你想有一个Icon动态地扩展它的父组件的大小调整大小,那么你可以使用Stretch Icon的能力,将始终基于图标的大小。

+0

我是否正确地说,JButton的实际可点击区域来自于正在使用的布局管理器? – DCON

+0

@DonnachaConnolly可点击区域来源于按钮的实际大小,可由布局管理器控制,但可以通过按钮“getPreferred/Minimum/MaximumSize” – MadProgrammer