Ich habe neu mit Java angefangen..
Die logischen Grundlagen für Code habe ich durch 7 Jahre Coden in Vb.net(teils auch kommerziell).
Allerdings habe ich mich in Vb.net nie mit Zeichnen beschäftigt.
Jetzt bin ich in Java eingestiegen, wo man viele Sachen selbst programmieren muss(find ich auch nicht schlecht).
Jetzt habe ich mit Applets angefangen.
Das Applet sieht momentan so aus:
public class CarHouse extends [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:japplet"]JApplet[/url] { EasyCarHouse EC = null; public void init() { [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:jrootpane"]JRootPane[/url] rootPane = this.getRootPane(); rootPane.putClientProperty("defeatSystemEventQueueCheck", [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:boolean"]Boolean[/url].TRUE); EC = new EasyCarHouse(this); } }
Dann habe ich noch eine Klasse in der ich Zeichnen möchte:
class EasyCarHouse { public [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:bufferedimage"]BufferedImage[/url] car, bg = null; public [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:graphics"]Graphics[/url] g; public [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:japplet"]JApplet[/url] J = null; ArrayList<EasyCar> Cars = new ArrayList<EasyCar>(); public EasyCarHouse([url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:japplet"]JApplet[/url] x) { this.J = x; this.loadimages(); } } private void loadimages() { try { car = [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:imageio"]ImageIO[/url].read(new [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:file"]File[/url]("Auto.png")); bg = [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:imageio"]ImageIO[/url].read(new [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:file"]File[/url]("Bg.jpg")); } catch ([url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:ioexception"]IOException[/url] e) {} }
Mein Ziel ist es, EasyCarHouse instanzieren zu können
und dann auf EasyCarHouse eine Methode drawsomecars() anwenden zu können,
die dann auf das übergebene Applet Autos zeichnet.
Beispiel so:
public class test extends [url="http://www.google.de/search?btnI&q=site:docs.oracle.com/javase/7/docs/api/%20inurl:japplet"]JApplet[/url] { EasyCarHouse EC = new EasyCarHouse(this); EC.drawsomecars(); //Jetzt sollten auf dem Applet(in diesem Fall test) welches ich übergeben habe, die Autos sein //Ich möchte nirgendswo das PaintEvent vom Applet außerhalb meiner EasyCarHouse klasse nutzen müssen }
Das Problem liegt darin: Ich weiss nicht wie ich innerhalb meiner Klasse auf das Applet zeichnen kann.
Im Applet CarHouse selbst möchte ich das PaintEvent nicht benutzen. Das Zeichnen auf das Applet soll alles in der instanzierten Klasse EasyCarHouse geschehen.
Wie bekomme ich das sauber hin?
Bearbeitet von Imperial, 07 July 2014 - 20:36 Uhr.