The following looks:
01 | import java.awt.*; |
02 | import java.awt.event.*; |
03 | import javax.swing.*; |
04 |
05 | public class Painter extends JFrame { |
06 | private int pointCount = 0; |
07 | private Point points[] = new Point[1000]; |
08 |
09 | public Painter () { |
10 | super ("Program menggambar sederhana"); |
11 |
12 | getContentPane().add(new JLabel("Drag mouse to draw"), BorderLayout.SOUTH); |
13 |
14 | addMouseMotionListener ( |
15 | new MouseMotionAdapter() { |
16 | public void mouseDragged (MouseEvent e) { |
17 | if (pointCount < points.length) { |
18 | points[pointCount] = e.getPoint(); |
19 | ++pointCount; |
20 | repaint(); |
21 | } |
22 | } |
23 | } //end of anonymous class |
24 | ); //end method addMotionListener |
25 |
26 | setSize (300,150); |
27 | setLocationRelativeTo(null); |
28 | setVisible(true); |
29 | } |
30 |
31 | public void paint (Graphics g) { |
32 | super.paint(g); |
33 | for (int i = 0; i < points.length && points[i] != null; i++) { |
34 | g.setColor(Color.red); |
35 | g.fillOval (points[i].x, points[i].y, 4,4); |
36 | } |
37 | } |
38 |
39 | public static void main (String args[]) { |
40 | Painter test = new Painter(); |
41 | test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); |
42 | } |
43 | } |

0 komentar: