Ik ben maar eens begonnen met java en ik probeer iets simpels: een lijntje tekenen.
De tutorials laten het zo makkelijk lijken, maar al die voorbeelden werken met applets, terwijl ik gewoon een normale venster wil. Met een beetje rond copy-pasten van codes en logisch nadenken kwam ik aan de volgende code:
Na het "compileren" van de code krijg ik geen errors. Bij het uitvoeren van het "programma" krijg ik netjes een venster van 480x272 pixels groot met de titel "helloWorld :D". Ik krijg echter geen lijntje.
De gehele code heb ik gepakt uit voorbeelden gepakt met normale venstertjes, echter, lijn 13 tot 18 (BufferedImage buffer tot gfx.draw) heb ik uit voorbeelden met een java applet. Waarschijnlijk moet ik het gfx-object invoegen in het frame-object zodat het weergegeven wordt, maar ik zou niet weten hoe.
Hoe dan ook; ik wil een lijntje in mijn venster hebben met zo min mogelijk (zo simpel mogelijke) code. Wie kan me helpen?
De tutorials laten het zo makkelijk lijken, maar al die voorbeelden werken met applets, terwijl ik gewoon een normale venster wil. Met een beetje rond copy-pasten van codes en logisch nadenken kwam ik aan de volgende code:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| import java.awt.*; import java.awt.geom.*; import java.awt.image.*; import javax.swing.*; public class helloWorld { public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { JFrame frame = new JFrame("helloWorld :D"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); BufferedImage buffer = new BufferedImage(480,272,BufferedImage.TYPE_INT_RGB); Graphics2D gfx = buffer.createGraphics(); gfx.setPaint(Color.black); gfx.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); gfx.draw(new Line2D.Double(10,20,30,40)); frame.setSize(480,272); frame.pack(); frame.setVisible(true); } }); } } |
Na het "compileren" van de code krijg ik geen errors. Bij het uitvoeren van het "programma" krijg ik netjes een venster van 480x272 pixels groot met de titel "helloWorld :D". Ik krijg echter geen lijntje.
De gehele code heb ik gepakt uit voorbeelden gepakt met normale venstertjes, echter, lijn 13 tot 18 (BufferedImage buffer tot gfx.draw) heb ik uit voorbeelden met een java applet. Waarschijnlijk moet ik het gfx-object invoegen in het frame-object zodat het weergegeven wordt, maar ik zou niet weten hoe.
Hoe dan ook; ik wil een lijntje in mijn venster hebben met zo min mogelijk (zo simpel mogelijke) code. Wie kan me helpen?
[ Voor 0% gewijzigd door Gamebuster op 15-12-2009 15:32 . Reden: hoogte en breedte van ImageBuffer aangepast naar grootte van venster. ]
Let op: Mijn post bevat meningen, aannames of onwaarheden