swing JPanel设置背景图 拉伸、平铺、居中
时间: 2023-10-06 14:10:22 浏览: 73
在 Swing 中,可以通过设置 JPanel 的背景来实现背景图的显示。具体的实现方式可以使用以下代码:
```java
// 创建 JPanel 对象
JPanel panel = new JPanel();
// 设置背景图片
ImageIcon imageIcon = new ImageIcon("background.jpg");
JLabel label = new JLabel(imageIcon);
panel.add(label);
// 设置背景图片的显示方式
label.setBounds(0, 0, imageIcon.getIconWidth(), imageIcon.getIconHeight());
panel.setPreferredSize(new Dimension(imageIcon.getIconWidth(), imageIcon.getIconHeight()));
panel.setLayout(null);
panel.setOpaque(false);
// 将 JPanel 添加到容器中
frame.add(panel);
```
在以上代码中,首先通过 `ImageIcon` 类加载图片,然后将其添加到一个 `JLabel` 对象中,并将该对象添加到 `JPanel` 中。接着,通过设置 `JPanel` 对象的布局方式为 `null`,并将其背景色设置为透明,来避免背景色遮挡背景图片。最后,设置 `JLabel` 对象的位置和大小,以及 `JPanel` 对象的首选大小,来实现背景图片的显示。
关于背景图片的显示方式,可以通过设置 `JLabel` 对象的位置和大小来实现不同的效果:
1. 拉伸:将 `JLabel` 对象的大小设置为与 `JPanel` 对象相同,以实现图片拉伸的效果。
2. 平铺:将 `JLabel` 对象的大小设置为小于等于 `JPanel` 对象的大小,以实现图片平铺的效果。
3. 居中:将 `JLabel` 对象的位置设置为居中,以实现图片居中的效果。
阅读全文