아래 프로그램에서 마우스를 클릭 할 때마다 모양의 색상이 변경됩니다. 하지만 마우스를 해당 모양을 클릭하면 색을 변경하고 싶습니다. 위치를 사용하지 않고이를 수행 할 수있는 방법이 있습니까?자바 : 모양을 마우스로 클릭 할 때 모양을 변경하십시오.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Colorchange extends JFrame {
public Colorchange() {
setTitle("Change Color on click");
setSize(500,500);
MyPanel pane=new MyPanel();
add(pane);
}
public static void main(String[] args) {
Colorchange ob=new Colorchange();
ob.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ob.setVisible(true);
}
}
class MyPanel extends JPanel {
int x=200,y=200,r=50;
Color co=Color.RED;
public MyPanel() {
addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent me) {
co=Color.YELLOW;
repaint();
}
});
}
public void paintComponent(Graphics g) {
g.setColor(co);
g.fillOval(x-r, y-r, 2*r, 2*r);
}
}
질문은 무엇을 칠 커서의 x, y 위치를 확인? – Christian
마우스를 클릭하면 모양의 색을 변경하고 싶습니다. – rajagopalx