shpanzer
04-01-2008, 17:51
Ciao a tutti,
questa classe dovrebbe disegnare una riga rossa e ridisegnarla tutte le volte che si clicca su un bottone. Solo che , non so perchè, non mi parte la classe paint e la linea non viene mai disegnata.
Qualcuno può aiutarmi? grazie...
package prova;
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
public class Gui extends JFrame{
JButton b = new JButton("start");
JFrame f = new JFrame();
public void creagui() {
class guiListener implements ActionListener{
public void actionPerformed(ActionEvent e){
repaint();
}
}
ActionListener listener = new guiListener();
b.addActionListener(listener);
f.setLayout(null);
b.setBounds(50, 50, 50, 50);
f.add(b);
f.setSize(500,500);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setResizable(false);
f.setVisible(true);
}
public void paint(Graphics g) {
System.out.println("a");
Graphics2D g2 = (Graphics2D) g;
g2.setColor(Color.red);
g2.drawLine(50, 50, 50, 50);
}
}
questa classe dovrebbe disegnare una riga rossa e ridisegnarla tutte le volte che si clicca su un bottone. Solo che , non so perchè, non mi parte la classe paint e la linea non viene mai disegnata.
Qualcuno può aiutarmi? grazie...
package prova;
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
public class Gui extends JFrame{
JButton b = new JButton("start");
JFrame f = new JFrame();
public void creagui() {
class guiListener implements ActionListener{
public void actionPerformed(ActionEvent e){
repaint();
}
}
ActionListener listener = new guiListener();
b.addActionListener(listener);
f.setLayout(null);
b.setBounds(50, 50, 50, 50);
f.add(b);
f.setSize(500,500);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setResizable(false);
f.setVisible(true);
}
public void paint(Graphics g) {
System.out.println("a");
Graphics2D g2 = (Graphics2D) g;
g2.setColor(Color.red);
g2.drawLine(50, 50, 50, 50);
}
}