JAVAでの背景画像表示
現在javaでゲームのメニュー画面を作っているのですが、ボタンを配置する所まではできたんですが、背景に画像を表示することができなくて困っています!
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.ImageIcon;
import java.awt.Container;
import java.awt.BorderLayout;
import javax.swing.border.LineBorder;
import javax.swing.border.EtchedBorder;
import java.awt.Color;
import java.awt.Container;
public class Mati extends JFrame{
public static void main(String[] args){
Mati frame = new Mati();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(10, 10,650,650);
frame.setTitle("街");
frame.setVisible(true);
JPanel h = new JPanel();
h.setOpaque(false);
ImageIcon icon1 = new ImageIcon("Mati.jpg");
JLabel label1 = new JLabel(icon1);
JLabel label2 = new JLabel();
h.add(label1);
}
Mati(){
JButton button1 = new JButton("宿屋");
button1.setFont(new Font("Mairyo", Font.PLAIN, 30));
JButton button2 = new JButton("道具屋");
button2.setFont(new Font("Mairyo", Font.PLAIN, 30));
JButton button3 = new JButton("武器屋");
button3.setFont(new Font("Mairyo", Font.PLAIN, 30));
JButton button4 = new JButton("街を出る");
button4.setFont(new Font("Mairyo", Font.PLAIN, 30));
JPanel p = new JPanel();
p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));
p.add(Box.createRigidArea(new Dimension(10,30)));
p.add(button1);
p.add(Box.createRigidArea(new Dimension(5,8)));
p.add(button2);
p.add(Box.createRigidArea(new Dimension(5,8)));
p.add(button3);
p.add(Box.createRigidArea(new Dimension(5,8)));
p.add(button4);
getContentPane().add(p, BorderLayout.CENTER);
}
}
ソースはこのようになっています。これからどうすれば背景画像が表示されるか教えていただきたいです。 よろしくお願いします。
お礼
お答えいただきありがとうございます。 >Java8からGUIの標準ライブラリはJavaFXに変更されており、Swingは今後廃止される予定です。 実は知りませんでした(赤面・・・) Java8のリリースノートを把握してから質問すべきでした。申し訳ありません。 おかげさまで自分のコードの根本的問題(swingであること)に気づけました。遅まきながらJavaFXを学んでいきます。 大変ありがとうございました。