자바 마우스 커서 제작, 변경[swing]

자바 마우스 커서 제작, 변경[swing]

안녕하세요.

오늘은 자바 스윙에서 마우스 커서를 제가 원하는 이미지로 바꿔보겠습니다.

  • 마우스 커서 이미지.
  • 마우스 커서 custom 코드.
  • 실행결과.

마우스 커서 이미지.

마우스 커서로 사용할 이미지는 다음과 같습니다.

(그냥 대충 작은 이미지 아무거나 골랐습니다.)

이 이미지를 폴더에 넣어줍니다.

마우스 custom코드

이제 마우스 커서를 만들어보겠습니다.

이런식으로 입력해줍니다.

public void customcursor(){
	/*커서만드는중*/
	Toolkit tk = Toolkit.getDefaultToolkit();
	Image cursorimage=tk.getImage("src/image/exitButtonP.png");//커서로 사용할 이미지
	Point point=new Point(0,0);
    //새로운 custom 커서(image cursor, Point hotSpot, String name)
	Cursor cursor=tk.createCustomCursor(cursorimage, point, "haha");
    //page1이라는 패널에 커서를 설정.
	page1.setCursor(cursor); 
}

 

전체 코드.

package test01;
import java.awt.Cursor;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Point;
import java.awt.Toolkit;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Main extends JFrame{
	/*패널*/
	static JPanel page1=new JPanel() {
		Image background=new ImageIcon(Main.class.getResource("../image/background.png")).getImage();
		public void paint(Graphics g) {//그리는 함수
				g.drawImage(background, 0, 0, null);//background를 그려줌		
		}
	};
	/*생성자*/
	public Main() {
		homeframe();
		customcursor();
	}
	public void customcursor(){
		/*커서만드는중*/
		Toolkit tk = Toolkit.getDefaultToolkit();
		Image cursorimage=tk.getImage("src/image/exitButtonP.png");
		Point point=new Point(20,20);
		Cursor cursor=tk.createCustomCursor(cursorimage, point, "haha");
		page1.setCursor(cursor); 
	}
	public void homeframe() {
		setTitle("1");
		setSize(400,600);//프레임의 크기
		setResizable(false);//창의 크기를 변경하지 못하게
		setLocationRelativeTo(null);//창이 가운데 나오게
		setLayout(null);
		setVisible(true);//창이 보이게	
		page1.setLayout(null);
		page1.setBounds(0, 0, 400, 600);
		add(page1);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//JFrame이 정상적으로 종료되게
	}
	public static void main(String[] args){
		new Main();
	}
}

실행결과.

이렇게 마우스가 x자 모양의 이미지로 바뀐 것을 확인할 수 있습니다.

Designed by JB FACTORY