import java.awt.*; import java.awt.event.*; class Kadai1108 extends Frame{ boolean mouse1,mouse2,mouse3; public Kadai1108(String title){ super(title); mouse1=false; mouse2=false; mouse3=false; addMouseListener(new MouseAdapter(){ public void mouseClicked(MouseEvent e){ if(e.getX()>=85 && e.getX()<=95){ if(e.getY()>=105 && e.getY()<=115){ if(mouse3==false)mouse3=true; else mouse3=false; } } if(e.getX()>=295 && e.getX()<=305){ if(e.getY()>=355 && e.getY()<=365){ if(mouse2==false)mouse2=true; else mouse2=false; } } if(e.getX()>=295 && e.getX()<=305){ if(e.getY()>=425 && e.getY()<=435){ if(mouse1==true)mouse1=false; else mouse1=true; } } repaint(); } }); addKeyListener(new KeyAdapter(){ public void keyPressed(KeyEvent e){ int key=e.getKeyChar(); System.out.println("keyPressed("+e+","+key+")"); if(key=='q') System.exit(0); } }); } public static void main(String[] args){ Kadai1108 frame=new Kadai1108("Yukidaruma"); frame.setSize(600,600); frame.setVisible(true); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); } public void paint(Graphics g){ g.setColor(Color.black); g.fillRect(0,0,600,600); g.setColor(Color.yellow); g.fillOval(20,40,140,140); if(mouse3==false){ g.setColor(Color.black); g.fillOval(60,20,120,120); } g.setColor(Color.white); g.fillOval(125,200,350,350); g.fillOval(50,530,500,500); g.setColor(Color.black); g.fillRect(185,280,100,50); g.fillRect(315,280,100,50); if(mouse2==true){ g.drawOval(255,350,20,20); g.drawOval(325,350,20,20); g.fillOval(261,356,9,9); g.fillOval(331,356,9,9); g.fillRect(215,350,60,10); g.fillRect(325,350,60,10); } if(mouse2==false){ g.fillRect(215,350,60,20); g.fillRect(325,350,60,20); } g.setColor(new Color(200,0,0)); g.fillOval(280,400,40,60); g.setColor(Color.white); g.fillRect(280,400,20,60); g.setColor(new Color(200,0,0)); if(mouse1==true){ int[] a={300,300,20}; int[] b={400,460,430}; g.fillPolygon(a,b,3); } if(mouse1==false){ int[] a={300,300,200}; int[] b={400,460,430}; g.fillPolygon(a,b,3); } g.setColor(Color.blue); int[] c={300,460,485,405}; int[] d={200,305,188,114}; g.fillPolygon(c,d,4); int x; g.setColor(new Color(230,230,230)); for(x=1;x<=150;x++){ int n=(int)(600*Math.random()); int m=(int)(600*Math.random()); g.fillOval(n,m,10,10); } } }