Jim Fox
16-09-2008, 17:13
Nel libro che sto seguendo sono arrivato al punto di dover disegnare in un componente. Mi chiede di disegnare una coppia di piccoli rettangoli in un frame.
Vi spiego... Il procedimento l'ho capito, ma quello che nn mi è chiaro è perché il compilatore mi va in errore nella riga " public class RectangleComponent extends JComponent ".
Personalmente, nella mia ignoranza, sono arrivato alla conclusione che la classe che vado ad invocare nn è definita e quindi "non riconosciuta".
Qualcuno sa spiegarmi il codice sotto?
import java.awt.Graphics;
import java.awt.Graphics2d;
import java.awt.Rectangle;
import javax.swing.Jcomponent;
// un componente che disegna due rettangoli
public class RectangleCompontent extends JComponent
{
public void paintComponent(Graphics g)
{
// recupera Graphics2D
Graphics2D g2 = (Graphics2D) g;
// costruisce un rettangolo e lo disegna
Rectangle box = new Rectangle(5, 10, 20, 30);
g2.draw(box);
// sposta il rettangolo di 15 unità verso destra e di 25 unità verso il basso
box.translate(15, 25);
// disegna il rettangolo nella nuova posizione
g2.draw(box);
}
}
e questo
import javax.swing.JFrame;
public class RectangleViewer
{
public static void main(String[] args)
{
JFrame frame = new JFrame();
frame.setSize(300, 400);
frame.setTitle("Two rectangles");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
RectangleComponent component = new RectangleComponent();
frame.add(componet);
frame.setVisible(true);
}
}
Per visualizzare i rettangoli richiesti cosa altro bisogna fare???
Vi spiego... Il procedimento l'ho capito, ma quello che nn mi è chiaro è perché il compilatore mi va in errore nella riga " public class RectangleComponent extends JComponent ".
Personalmente, nella mia ignoranza, sono arrivato alla conclusione che la classe che vado ad invocare nn è definita e quindi "non riconosciuta".
Qualcuno sa spiegarmi il codice sotto?
import java.awt.Graphics;
import java.awt.Graphics2d;
import java.awt.Rectangle;
import javax.swing.Jcomponent;
// un componente che disegna due rettangoli
public class RectangleCompontent extends JComponent
{
public void paintComponent(Graphics g)
{
// recupera Graphics2D
Graphics2D g2 = (Graphics2D) g;
// costruisce un rettangolo e lo disegna
Rectangle box = new Rectangle(5, 10, 20, 30);
g2.draw(box);
// sposta il rettangolo di 15 unità verso destra e di 25 unità verso il basso
box.translate(15, 25);
// disegna il rettangolo nella nuova posizione
g2.draw(box);
}
}
e questo
import javax.swing.JFrame;
public class RectangleViewer
{
public static void main(String[] args)
{
JFrame frame = new JFrame();
frame.setSize(300, 400);
frame.setTitle("Two rectangles");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
RectangleComponent component = new RectangleComponent();
frame.add(componet);
frame.setVisible(true);
}
}
Per visualizzare i rettangoli richiesti cosa altro bisogna fare???