【发布时间】:2012-08-08 00:29:06
【问题描述】:
所以我一直在研究我的程序,但我无法设置一个带有网络地图背景图像的 JFrame,然后使用 JFrame 顶部的 MigLayout 设置一个 JPanel这将允许我根据网络地图放置图像。我已经看到了几种关于如何设置背景图像的不同方法,并尝试使用我在本网站其他地方找到的示例,但效果不太好。此外,我对此进行了更多研究,发现在 JFrame 上放置 JPanel 可能会阻止看到 JFrame 背景图像。我希望有人可以查看我的代码并让我知道是否是这种情况。
这是我设置背景的类:
public class bwMonBackground extends JFrame {
Image img;
public bwMonBackground() {
try {
img = ImageIO.read(new File("/Users/pwopperer/workspace/BWmon/src/customer_vlans.jpg"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void paintComponent(Graphics g)
{
super.paintComponents(g);
g.drawImage(img, 0, 0, getWidth(), getHeight(), this);
}
}
这是我的主要内容:
public class bwMonBackgroundMain {
public static void main( String[] args )
{
bwMonBackground frame = new bwMonBackground();
frame.setLayout(new FlowLayout(FlowLayout.LEFT,10,20));
migLayout testing = new migLayout();
frame.add(testing.createLayout());
frame.setVisible(true);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
}
}
编辑:当我像这样运行它时,我只得到一个 JPanel,其中包含我添加到其中的 6 个 JLabel
【问题讨论】:
标签: java swing jframe jpanel background-image