import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Maus2 extends JFrame implements ActionListener
{
MeineCanvas m_malfläche;
ButtonGroup m_formauswahl;
int X ;
int Y ;
int prevX ;
int prevY ;
int farbe ;
public static void main (String[] args)
{
Maus2 Fenster = new Maus2();
Fenster.setSize(1024,768);
Fenster.show();
}
public Maus2()
{
super("Paint");
getContentPane().setLayout(new FlowLayout());
m_malfläche = new MeineCanvas();
getContentPane().add(m_malfläche);
Panel panel=new Panel();
panel.setLayout(new GridLayout(7,1,30,30));
m_formauswahl = new ButtonGroup();
Button delB = new Button("Löschen");
getContentPane().add(delB);
delB.setBackground(Color.gray);
delB.setForeground(Color.black);
JRadioButton schwarzB = new JRadioButton("Schwarz");
getContentPane().add(schwarzB);
schwarzB.setForeground(Color.black);
JRadioButton blauB = new JRadioButton("Blau");
getContentPane().add(blauB);
blauB.setForeground(Color.blue);
JRadioButton grünB = new JRadioButton("Grün");
getContentPane().add(grünB);
grünB.setForeground(Color.green);
JRadioButton rotB = new JRadioButton("Rot");
getContentPane().add(rotB);
rotB.setForeground(Color.red);
JRadioButton gelbB = new JRadioButton("Gelb");
getContentPane().add(gelbB);
gelbB.setForeground(Color.yellow);
//m_formauswahl.add(delB);
m_formauswahl.add(schwarzB);
m_formauswahl.add(blauB);
m_formauswahl.add(grünB);
m_formauswahl.add(rotB);
m_formauswahl.add(gelbB);
this.getContentPane().add(delB);
delB.addActionListener(this);
this.getContentPane().add(schwarzB);
schwarzB.addActionListener(this);
this.getContentPane().add(blauB);
blauB.addActionListener(this);
this.getContentPane().add(grünB);
grünB.addActionListener(this);
this.getContentPane().add(rotB);
rotB.addActionListener(this);
this.getContentPane().add(gelbB);
gelbB.addActionListener(this);
panel.add(delB);
panel.add(schwarzB);
panel.add(blauB);
panel.add(grünB);
panel.add(rotB);
panel.add(gelbB);
getContentPane().add(panel);
addWindowListener(new schließen());
setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
String Klick = e.getActionCommand();
Graphics g = getGraphics();
if (Klick == "Löschen")
{m_malfläche.repaint(); farbe = 0;}
if (Klick == "Gelb")
{farbe = 1;}
if (Klick == "Rot")
{farbe = 2;}
if (Klick == "Blau")
{farbe = 3;}
if (Klick == "Grün")
{farbe = 4;}
if (Klick == "Schwarz")
{farbe = 5;}
}
class schließen extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
class MeineCanvas extends Canvas
implements MouseListener,MouseMotionListener
{
public void mousePressed(MouseEvent e)
{
prevX = e.getX();
prevY = e.getY();
}
public void mouseDragged(MouseEvent e)
{
X = e.getX();
Y = e.getY();
Graphics g = getGraphics();
if (farbe == 1)
{g.setColor(Color.yellow);}
if (farbe == 2)
{g.setColor(Color.red);}
if (farbe == 3)
{g.setColor(Color.blue);}
if (farbe == 4)
{g.setColor(Color.green);}
if (farbe == 5)
{g.setColor(Color.black);}
g.drawLine(X,Y,prevX,prevY);
prevX = X;
prevY = Y;
}
public void mouseClicked(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mouseMoved(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
public MeineCanvas()
{
setBackground(Color.white);
addMouseListener(this);
addMouseMotionListener(this);
}
public Dimension getMinimumSize()
{
return new Dimension(850,720);
}
public Dimension getPreferredSize()
{
return getMinimumSize();
}
}
}