如何将图像添加到 JButton
2022-08-31 20:48:03
我正在尝试将图像添加到JButton,但我不确定我错过了什么。当我运行以下代码时,该按钮看起来与我创建它时没有任何图像属性完全相同。水.bmp位于我的项目文件夹的根目录中。
ImageIcon water = new ImageIcon("water.bmp");
JButton button = new JButton(water);
frame.add(button);
我正在尝试将图像添加到JButton,但我不确定我错过了什么。当我运行以下代码时,该按钮看起来与我创建它时没有任何图像属性完全相同。水.bmp位于我的项目文件夹的根目录中。
ImageIcon water = new ImageIcon("water.bmp");
JButton button = new JButton(water);
frame.add(button);
我认为您的问题在于图像的位置。你应该把它放在你的源代码中,然后像这样使用它:
JButton button = new JButton();
try {
Image img = ImageIO.read(getClass().getResource("resources/water.bmp"));
button.setIcon(new ImageIcon(img));
} catch (Exception ex) {
System.out.println(ex);
}
在此示例中,假定图像位于 src/resources/ 文件夹中。
@Rogach
您可能想添加:
// to remote the spacing between the image and button's borders
button.setMargin(new Insets(0, 0, 0, 0));
// to add a different background
button.setBackground( ... );
// to remove the border
button.setBorder(null);