본문 바로가기

JAVA 흥미를 더하다!

[JAVA] MouseAdapter 사용하여 배경색 바꾸기

더블클릭할 때마다 컨텐트팬의 배경색이 바뀌는 코딩을 작성해 봅시다.  random() 메소드를 이용할겁니다. 그리고 임의의 색을 자동생성하기 위해서는 필요한 코딩이 무었을까요? 


int r=(int)(Math.random()*256);

int g=(int)(Math.random() *256);

int b =(int)(Math.random()*256);

Color c= new Color(r,g,b);


더블 클릭할때마다 변경색이 바뀝니다.



r,g,b는 색상을 구성하는 변수입니다. 그리고 (0~255) 사이의 숫자 값을 넣습니다.

램던한 색을 담기 위해서는 Math.random()을 호출하고 이 값을 int 형으로 형 변환됩니다.


클래스 ClickAndDouble  만듭니다. 그리고 extends JFrame을 상속받습니다.

JPanel contentPane = new JPanel();  팬널을 생성합니다.

setContentPane(contentPane); 생성하여 담습니다.

contentPane.addMouseListener(new MyMouseListener()); contentPane패널에서

addMouseListener 붙입니다. 그리고  new MyMouseListener();생성합니다.


new MyMouseListener();을 생성하기 전에 class MyMouseListener 만드셔야 빨간줄이 안생김니다. 빨간줄이 생기는게 싫으면 미리 클래스를 만드시며 됩니다.


아래 MyMouseLisner 클래스 작성 코드입니다.

MyMouseListener 클래스를 만든다음 extends MouseAdapter 상속받습니다.

MouseAdapter상속받은 이유는 public void mouseClicked(MouseEvent e) 코딩을

작성하기 위해서 입니다.

if(e.getClickCount() ==2) 만약 더블클릭인가 확인하는 를 코딩입니다.