ERLEDIGT
JA
JA
ANTWORTEN
4
4
ZUGRIFFE
1710
1710
EMPFEHLEN
-
Hallo,
nachdem ich nun mein Programm als JFrame fertig gestellt habe würde ich dies nun gerne in ein Applet / JApplet einbinden.
Code :1 2 3 4 5 6 7 8 9 10 11 12
import java.awt.*; import javax.swing.*; public class Futest extends JApplet { public Futest() { getContentPane().add(new Darstellung()); } }
Code :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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.applet.*; import java.net.URL; /** ---------- */ public class Darstellung extends JFrame implements ActionListener { // Variablen ...... // Konstruktor public Darstellung() { // Titel setTitle(titel); // Beendet die Anwendung mit System.exit(0) setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Größe setSize(GroeßeX,GroeßeY); // Position //setLocation(PositionX,PositionY); // Zentriere setLocationRelativeTo(null); // Setzte die MenuBar createMenuBar(); // Immer im Vordergrund setAlwaysOnTop(startAlwaysOnTop); // Initialisierung der Uhr uhr = new Uhr(); if(!starte24StdFormat) uhr.wechselZeitFormat(); // Initialisiere die Darstellung grafik = new Grafik(uhr, startDigital); // Füge die Grafik zum Content Pane hinzu getContentPane().add(grafik); // Sichtbarkeit setVisible(true); // Initialisierung des Timers timer = new Timer(1000, this); timer.start(); try { clip = Applet.newAudioClip(new URL("file:///C:\\sound.wav")); } catch(Exception e) { System.out.println(e); } } ...... }
Nach dem ausführen bekomme ich nun folgende Meldung:
Ausnahme: access denied (java.lang.RuntimePermission exitVM.0)
Ich hoffe jemand man von euch kann mir weiterhelfen und sagen was daran falsch ist bzw. sagen wie man so etwas richtig macht.
Vielen dank schonmal für eure Hilfe.
Viele Grüße
Skady
P.S. Mein erster Gedanke war der nicht erlaubte Dateizugriff auf C:, leider ist dieser nicht das Problem.
-
Moin,
erst einmal würde ich ganz einfach behaupten, dass das was Du da versuchst - nämlich einen JFrame einem Container zuzufügen - absolut nicht funktioniert.
Hab das gestern (aus Versehen) auch gemacht und da gab es ne dicke Exception.
In Deinem Fall verkörpert das Applet ja bereits einen "Frame", im Sinne des anzuzeigenden Grundgerüsts auf der Webseite.
Deine Exception selbst scheint sich aber auf etwas anderes zu beziehen.
Zeilenangabe bzw. den passenden Codeteil für die Exception wäre mal interessant zu sehen.
Gruß,
Xan
-
Aufgrund deiner Antwort habe ich versucht das Applet anders zu starten.
Folgendes kam dabei rum:
Code :1 2 3 4 5 6 7 8 9
java.lang.IllegalArgumentException: adding a window to a container at java.awt.Container.addImpl(Container.java:1022) at java.awt.Container.add(Container.java:352) at Futest.<init>(Futest.java:10) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at bluej.runtime.ExecServer$3.run(ExecServer.java:874)
Zeile 10 ist wie bereits erwartet:
Code :1
getContentPane().add(new Darstellung());
Ich muss zugeben, dass ich noch mit bluej arbeite. Die obige Meldung entstand diesmal durch direkten Aufruf von newfutest(). Vorher hatte ich immer "Run Applet" ausgewählt.
Ich nehme an das der nächste Schritt, Richtung lauffähiges Applet, eine Änderung der Klasse Darstellung auf JPanel ist oder?
-
Moin,
Du brauchst einfach nur die Applet-Klasse wie eine Frame-Klasse zu behandeln - natürlich mit minimierter Funktionalität (siehe API).
Es ist sozusagen Dein MainFrame, auf dem sich alles abspielt.
Wolltest Du eben noch alle möglichen Dinge per JFrame realisieren, brauchst Du dies nur auf die Applet-Klasse anwenden.
Somit fällt der JFrame komplett raus - es sei denn Du willst ein Applet, welches einen JFrame aufruft.
Die ganzen Komponenten auf ein JPanel zu packen, um dieses dann dem Applet hinzuzufügen, ist wohl eine annehmbare Lösung.
Gruß,
Xan
-
Na gut dann warte ich lieber erstmal ab ob sich der Dozent auch damit zufrieden gibt, ansonsten wird das noch fix geändert.
Danke jedenfalls für die schnelle Hilfe.
Ähnliche Themen
-
Problem mit Jframe nach JApplet umschreiben
Von Luna im Forum JavaAntworten: 2Letzter Beitrag: 12.12.10, 10:32 -
Einbinden von generierten Graphics in JFrame?
Von Angiii im Forum JavaAntworten: 2Letzter Beitrag: 14.05.09, 11:02 -
Aus einem JFrame anderes JFrame starten
Von maddos im Forum JavaAntworten: 3Letzter Beitrag: 09.08.07, 12:24 -
Ein JFrame aus einem anderem JFrame aufrufen!
Von Lautsprecher im Forum JavaAntworten: 1Letzter Beitrag: 14.11.05, 09:37 -
JFrame sperren oder neuen JFrame modal darstellen
Von Scrapy im Forum JavaAntworten: 2Letzter Beitrag: 07.09.05, 12:16





Zitieren
Login





