public class HappyFaceJFrame extends JFrame
1: import javax.swing.JFrame;
2: import java.awt.Graphics;
3:
4: public class HappyFaceJFrame extends JFrame
5: {
6: public static final int FACE_DIAMETER = 200;
7: public static final int X_FACE = 100;
8: public static final int Y_FACE = 50;
9:
10: public static final int EYE_WIDTH = 10;
11: public static final int EYE_HEIGHT = 20;
12: public static final int X_RIGHT_EYE = 155;
13: public static final int Y_RIGHT_EYE = 100;
14: public static final int X_LEFT_EYE = 230;
15: public static final int Y_LEFT_EYE = Y_RIGHT_EYE;
16:
17: public static final int MOUTH_WIDTH = 100;
18: public static final int MOUTH_HEIGHT = 50;
19: public static final int X_MOUTH = 150;
20: public static final int Y_MOUTH = 160;
21: public static final int MOUTH_START_ANGLE = 180;
22: public static final int MOUTH_DEGREES_SHOWN = 180;
23:
24: public void paint(Graphics canvas)
25: {
26: //Draw face outline:
27: canvas.drawOval(X_FACE, Y_FACE, FACE_DIAMETER, FACE_DIAMETER);
28: //Draw eyes:
29: canvas.fillOval(X_RIGHT_EYE, Y_RIGHT_EYE, EYE_WIDTH, EYE_HEIGHT);
30: canvas.fillOval(X_LEFT_EYE, Y_LEFT_EYE, EYE_WIDTH, EYE_HEIGHT);
31: //Draw mouth:
32: canvas.drawArc(X_MOUTH, Y_MOUTH, MOUTH_WIDTH, MOUTH_HEIGHT,
33: MOUTH_START_ANGLE, MOUTH_DEGREES_SHOWN);
34: }
35:
36: public HappyFaceJFrame()
37: {
38: setSize(600,400);
39: setDefaultCloseOperation(EXIT_ON_CLOSE);
40: }
41:
42: public static void main(String[] args)
43: {
44: HappyFaceJFrame guiWindow = new HappyFaceJFrame();
45: guiWindow.setVisible(true);
46: }
47: }