Y
York
Hi everybody,
i'm new to Java 2D and I have a Problem drawing a geometric primitive
on a JPanel.
I used getGraphics() to get the Graphics-Object of my JPanel, casted
it to Graphics2D, then drew a line on it und used myJPanel.repaint()
to update the JPanel.
But somehow I can't see the line I'v drawn and i can't figure it out
why .
the following is my code (without import statements):
.......................................................................................................
public class NewJFrame extends JFrame {
private JPanel pane = null;
/** Creates new instance */
public NewJFrame() {
initComponents();
// draw a line on JPanel
Graphics2D canvas = (Graphics2D)pane.getGraphics();
canvas.setPaint(Color.BLUE);
canvas.draw(new Line2D.Float(1,1,111,111));
pane.repaint();
}
private void initComponents() {
Dimension min = new Dimension(300,300);
setMinimumSize(min);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
pane = new JPanel();
setContentPane(pane);
pane.setBackground(new Color(255, 204, 255));
pane.setForeground(new Color(51, 51, 255));
pack();
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}
}
.......................................................................................................
Any help would be greatly appreicated, because I am deeply confused
and frustrated.
i'm new to Java 2D and I have a Problem drawing a geometric primitive
on a JPanel.
I used getGraphics() to get the Graphics-Object of my JPanel, casted
it to Graphics2D, then drew a line on it und used myJPanel.repaint()
to update the JPanel.
But somehow I can't see the line I'v drawn and i can't figure it out
why .
the following is my code (without import statements):
.......................................................................................................
public class NewJFrame extends JFrame {
private JPanel pane = null;
/** Creates new instance */
public NewJFrame() {
initComponents();
// draw a line on JPanel
Graphics2D canvas = (Graphics2D)pane.getGraphics();
canvas.setPaint(Color.BLUE);
canvas.draw(new Line2D.Float(1,1,111,111));
pane.repaint();
}
private void initComponents() {
Dimension min = new Dimension(300,300);
setMinimumSize(min);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
pane = new JPanel();
setContentPane(pane);
pane.setBackground(new Color(255, 204, 255));
pane.setForeground(new Color(51, 51, 255));
pack();
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}
}
.......................................................................................................
Any help would be greatly appreicated, because I am deeply confused
and frustrated.