자바 프레임에 이미지 넣기[java swing]
- 프로그래밍/JAVA
- 2019. 12. 28.
250x250
자바 프레임에 이미지 넣기[java swing].
안녕하세요.
오늘은 자바 프레임에 이미지를 넣어보겠습니다.
- 프레임 만들기.
- 넣을 이미지 준비.
- 코드.
- 실행 결과.
1. java swing 프레임[JFrame] 만들기.
이미지가 들어갈 Gui프레임을 만들어보겠습니다.
아래 글을 참고하거나 아래 코드를 조금 보시면 알 수 있을겁니다.
[프로그래밍/JAVA] - java swing 창 만들기
그래서 이미지를 넣을 프레임의 코드는 다음과 같습니다.
package test01;
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
public class Main extends JFrame{
/*생성자*/
public Main() {
homeframe();
}
/*생성자에 써도 되는 것들입니다. 그냥 저는 함수 만들어서 썻습니다.*/
public void homeframe() {
setTitle("1");//타이틀
setSize(400,600);//프레임의 크기
setResizable(false);//창의 크기를 변경하지 못하게
setLocationRelativeTo(null);//창이 가운데 나오게
setLayout(null);//레이아웃을 내맘대로 설정가능하게 해줌.
setVisible(true);//창이 보이게
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//JFrame이 정상적으로 종료되게
}
/*메인함수*/
public static void main(String[] args){
new Main();
}
}
저는 크기를 400, 600으로 해서 이런 프레임이 생성됩니다.
2. 프레임에 넣을 이미지 준비.
이제 프레임에 넣을 이미지를 만들겠습니다.
저는 그냥 대충 그림판으로 만들었습니다.
그냥 다른데서 가져오셔도 상관없습니다.
넣을 이미지를 준비하시고 이 이미지를 넣어줘야 합니다.
원하는 이름의 폴더를 하나 만들고, 폴더에 원하는 이름으로 넣어주세요.
(ex: image폴더, 아래사진 참고.)
3. 코드
프레임에 표시할 이미지.
/*여기 있는 경로의 이미지를 프레임에서 그려줄거임.*/
private Image background=new ImageIcon(Main.class.getResource("경로")).getImage();//배경이미지
프레임에 이미지를 표시해주기 위해서는 그려주는 함수가 필요합니다.
아래의 paint함수를 넣어줍니다.
public void paint(Graphics g) {//그리는 함수
g.drawImage(background, 0, 0, null);//background를 그려줌
}
이렇게 해서 전체 코드는 이렇게 됩니다.
package test01;
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
public class Main extends JFrame{
/*여기있는 이미지를 프레임에 그려줄거임.*/
private Image background=new ImageIcon(Main.class.getResource("../image/background.png")).getImage();//배경이미지
/*생성자*/
public Main() {
homeframe();
}
public void homeframe() {
setTitle("1");//타이틀
setSize(400,600);//프레임의 크기
setResizable(false);//창의 크기를 변경하지 못하게
setLocationRelativeTo(null);//창이 가운데 나오게
setLayout(null);//레이아웃을 내맘대로 설정가능하게 해줌.
setVisible(true);//창이 보이게
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//JFrame이 정상적으로 종료되게
}
public void paint(Graphics g) {//그리는 함수
g.drawImage(background, 0, 0, null);//background를 그려줌
}
public static void main(String[] args){
new Main();
}
}
4. 실행결과
위의 코드를 실행하면 이렇게 제가 만든 이미지가 프레임에 표시되는 것을 확인할 수 있습니다.