Java Reference
In-Depth Information
green . addActionListener( new ColorListener(Color .GREEN)) ;
red . addActionListener( new ColorListener(Color .RED)) ;
blue . addActionListener( new ColorListener(Color .BLUE)) ;
class ColorListener implements ActionListener {
private Color color ;
public ColorListener () {
color = Color.RED;
} public ColorListener(Color color) {
this . color = color ;
} public void actionPerformed(ActionEvent e) {
p. changeColor( color ) ;
}
}
}
class MyPanel extends JPanel {
ArrayList < MyShape > shapes = new ArrayList < MyShape > () ;
private Color currentColor ;
public void changeColor(Color newColor) {
currentColor = newColor;
} public MyPanel () {
addMouseListener( new MouseAdapter () {
public void mousePressed (MouseEvent e )
{
if (e . getButton() == 1) {
shapes .add( new MyShape( e . getPoint ( ) , currentCo lor ) ) ;
repaint () ;
if (e . getButton() == 3) {
shapes = new ArrayList < MyShape > () ;
repaint () ;
}
}
}
);
addMouseMotionListener( new MouseMotionAdapter ()
{
public void mouseDragged(MouseEvent e)
{
System.out . println(e. getModifiersEx()) ;
if ((e. getModifiersEx() & MouseEvent.BUTTON1DOWN MASK)
! = 0 )
{
shapes . get(shapes . size () 1) . addPoint(e . getPoint () ) ;
repaint () ;
}
}
} );
}
public void paintComponent(Graphics g)
{
super . paintComponent(g) ;
Graphics2D g2 = (Graphics2D) g ;
for (MyShape s
:
shapes )
{
s . drawShape(g2) ;
 
Search WWH ::




Custom Search