Czesc, mam pewien problem w dzialaniu programu. Kombinuje juz 3 dni i nie potrafie wymyslic jak wywolac pewna akcje za pomoca sluchacza. Problem polega na tym, ze chce by program po wybraniu odpowiedniego koloru i figury, narysowal ja w danym kolorze. Pomoze ktos mnie nakierowac jak zmodyfikowac kod? Z gory dziekuje!
import java.awt.Button;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.applet.Applet;
import java.awt.Color;
public class az extends Applet implements MouseListener, MouseMotionListener, KeyListener, ActionListener {
int mouseX1=0;
int mouseY1=0;
int mouseX2=0;
int mouseY2=0;
int prostokat=0;
Button b= new Button("linia");
Button b1= new Button("prostokat");
Button b2= new Button("cos okraglego");
Button b3= new Button();
Button b4= new Button();
Button b5= new Button();
public void init() {
addMouseListener(this);
addMouseMotionListener(this);
addKeyListener(this);
b.setBounds(10,100,80, 30);
b.addActionListener((ActionListener) new b());
add(b);
setLayout(null);
b1.setBounds(10,130,80, 30);
b1.addActionListener((ActionListener) new b1());
add(b1);
setLayout(null);
b2.setBounds(10,160,80, 30);
b2.addActionListener((ActionListener) new b2());
add(b2);
setLayout(null);
b3.setBounds(10,70,80, 30);
b3.addActionListener((ActionListener) new b3());
b3.setBackground(Color.DARK_GRAY);
add(b3);
//setBackground(Color.Blue);
setLayout(null);
b4.setBounds(10,40,80, 30);
b4.addActionListener((ActionListener) new b4());
b4.setBackground(Color.red);
add(b4);
//setBackground(Color.RED);
setLayout(null);
b5.setBounds(10,10,80, 30);
b5.addActionListener((ActionListener) new b5());
b5.setBackground(Color.GREEN);
add(b5);
//setBackground(Color.Green);
setLayout(null);
}
// TODO overwrite start(), stop() and destroy() methods
@Override
public void mouseClicked(MouseEvent me) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void mousePressed(MouseEvent me) {
mouseX1=me.getX();
mouseY1=me.getY();
repaint();
}
@Override
public void mouseReleased(MouseEvent me) {
mouseX2=me.getX();
mouseY2=me.getY();
repaint();
}
@Override
public void mouseEntered(MouseEvent me) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void mouseExited(MouseEvent me) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void mouseDragged(MouseEvent me) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void mouseMoved(MouseEvent me) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void keyTyped(KeyEvent ke) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void keyPressed(KeyEvent ke) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void keyReleased(KeyEvent ke) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void actionPerformed(ActionEvent me) {
if(prostokat==0)
prostokat=1;
else
prostokat=0;
}
public void paint(Graphics gr)
{
if (prostokat==0)
gr.drawLine(mouseX1, mouseY1, mouseX2, mouseY2);
else
if(mouseX2-mouseX1>0)
gr.drawRect(mouseX1, mouseY1, mouseX2-mouseX1,mouseY2- mouseY1);
else
gr.drawRect(mouseX2, mouseY2, mouseX1-mouseX2,mouseY1- mouseY2);
}
class b implements ActionListener
{
public void actionPerformed(ActionEvent e)
{ Graphics rysuj = getGraphics();
if (prostokat==0)
rysuj.drawLine(mouseX1, mouseY1, mouseX2, mouseY2);
}}
class b1 implements ActionListener
{
public void actionPerformed(ActionEvent e){
Graphics rysuj = getGraphics();
if(mouseX2-mouseX1>0)
rysuj.drawRect(mouseX1, mouseY1, mouseX2-mouseX1,mouseY2- mouseY1);
else
rysuj.drawRect(mouseX2, mouseY2, mouseX1-mouseX2,mouseY1- mouseY2);
}}
class b2 implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
}}
class b3 implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
}
}
class b4 implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
}
}
class b5 implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
}
}
}