오랜된 포스팅/Java
JFrame/swing 배경이미지 넣는 방법
Toycode
2018. 6. 24. 20:31
JFrame 배경이미지 삽입방법
이번 포스팅은 배경화면을 넣는 소스 코드를 포스팅하겠습니다.
사용하고자하는 사진의 크기는
panel의 크기와 동일하도록 지정해주어야하고
단점은.. 창의 크기에 따라 반응하여
크기가 조절되었으면 했지만..
아직, 그런 기능을 찾아보지 못 했기에.. 다음에 꼭! 추가 수정을 하겠습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | package view; import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.JFrame; import javax.swing.JLayeredPane; import javax.swing.JOptionPane; import javax.swing.JPanel; public class loginView extends JFrame implements ActionListener { BufferedImage img = null; public loginView() { setTitle("배경화면 테스트"); // 배경 Panel JLayeredPane layeredPane = new JLayeredPane(); layeredPane.setSize(480, 640); layeredPane.setLayout(null); try { img = ImageIO.read(new File("C:\\Users\\Hyeonseok\\Desktop\\main.jpg")); } catch (IOException e) { JOptionPane.showMessageDialog(null, "이미지 불러오기 실패"); System.exit(0); } // 이미지 삽입 myPanel panel = new myPanel(); panel.setSize(480,640); layeredPane.add(panel); setLayout(null); add(layeredPane); setBounds(720, 220, 480, 640); setVisible(true); setResizable(false); // 창크기 수정불가 setDefaultCloseOperation(EXIT_ON_CLOSE); } class myPanel extends JPanel { public void paint(Graphics g) { g.drawImage(img, 0, 0, null); } } @Override public void actionPerformed(ActionEvent e) { } public static void main(String[] args) { new loginView(); } } | cs |