Flash in Panel einbetten

Status
Nicht offen für weitere Antworten.

cyliax

Mitglied
Hallo, ich bekomme es irgendwie nicht hin, ein geladenes Flash auf eine bereits existierendes JPanel zu legen. Wenn ich stattdessen einen neuen Frame aufmache, ist das kein Problem. Fehlermeldungen kommen nicht, anscheinend wird das Flash auch ordentlich geladen, halt nur nicht angezeigt. Hat jemand ne Idee wie ich das hinbekomme?

Code:
//...

File inFile = fileDialog.getSelectedFile();
NativeInterface.open();

JFlashPlayer flashPlayer1 = new JFlashPlayer();
flashPlayer1.load(file.getAbsolutePath());

JFlashPlayer flashPlayer2 = new JFlashPlayer();
flashPlayer2.load(file.getAbsolutePath());
    	    	    
// geht
JFrame frame = new JFrame("DJ Native Swing Test");
frame.getContentPane().add(flashPlayer1);
frame.setSize(800, 600);   
frame.setLocationByPlatform(true);
frame.setVisible(true);

// geht nicht
panel.removeAll();
panel.add(flashPlayer2);
panel.validate();
panel.repaint();

//...

Danke euch schonmal.

PS: Die Klasse JFlashPlayer stammt aus dem Projekt DJ Swing (The DJ project).
 

Ebenius

Top Contributor
Den Teil ab "geht nicht" führst Du aus einem EventListener aus? Schon revalidate() statt validate probiert?

Poste mal einen etwas größeren Ausschnitt des Codes der den FlashPlayer auf Deine GUI zimmert.

Ebenius
 

Marco13

Top Contributor
Der FlashPlayer vom DJProject hat ein Problem damit, wenn er einmal von (s)einer Elternkomponente entfernt- und wieder hinzugefügt wurde... eine Abhilfe hatte ich damals auch nicht gefunden...
 

cyliax

Mitglied
@Ebenius:
ja der Inhalt wird durch ne Aktion im EventListener ausgetauscht. Mit repaint(), invalidate(), validate() und revalidate() hatte ich schon alles versucht.

@Marco 13:
Ja irgendwie kommt mir das auch spanisch vor, das der das Flashzeug nur auf nen neu geöffneten Frame kleben will, nicht aber auf ein Panel.

Habe jetzt nen kleinen Workaround der funktioniert, mit JInternalFrames. Ist zwar immer noch nicht ganz so wie ich will, denn ich bekommen den Rahmen um das InternalFrame nicht weg, aber immerhin sieht man die Flash-Datei jetzt schonmal im Hauptfenster auf dem Panel, also da wo sie hin soll.

Code:
JFlashPlayer flashPlayer = new JFlashPlayer();   
flashPlayer.load(file.getAbsolutePath());   

JDesktopPane desktopPane = new JDesktopPane();
desktopPane.setPreferredSize(new Dimension(width-2, 97));
JInternalFrame internalFrame = new JInternalFrame("",
	false, //resizable
	false, //closable
	false, //maximizable
	false);//iconifiable

internalFrame.getContentPane().add(flashPlayer);
internalFrame.setVisible(true);
desktopPane.add(internalFrame);
try {
	internalFrame.setMaximum(true);
} catch (PropertyVetoException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}

this.add(desktopPane); // THIS ist ein JPanel was wiederrum in einem JFrame liegt.

So, ich danke erstmal allen soweit und freue mich weiter über Hilfe, entweder andere Methode um Flash auf Panel zu bringen oder aber, InternalFrames ohne Rahmen. Danke.
 

Marco13

Top Contributor
Hm... GERADE bei JInternalFrames hatten wir da einige Probleme ... ???:L Mach' mal einen zweiten JInternalFrame dazu, und klick dann zwischen dem neuen und dem mit dem Flash hin- und her - da wird munter removt und geadded, und dann haut's ihn afaik raus...
 

cyliax

Mitglied
Das mag sein, aber ich brauche an der Stelle garkeinen zweiten InternalFrame. Ich möchte einfach nur ne Flashdatei in nem Panel anzeigen, egal wie und das mit dem InternalFrame ist halt jetzt ne Krücke, die nicht schön ist, aber eigenartigerweise funktioniert. Die eigentlichen Funktionen, also Resize, Drag&Drop usw. von dem InternalFrame brauche ich auch nicht. Ich suche trotzdem noch weiter... kann doch irgendwie nicht sein, das das nicht geht.

Was mir gerade noch einfällt... gibts ne Möglichkeit den InternalFrame etwas aus dem DesktopPane zu schieben, also in den negativen Bereich? Dann würde man den Rand oben ja auch nicht mehr sehen oder? Hat da jemand ne Idee wie man das machen könnte? Danke!
 
Zuletzt bearbeitet:

Ebenius

Top Contributor
Unter der Maßgabe, dass das ganze nur ein Workaround ist, ist auch dieser Code zulässig. :D [Highlight=Java]internalFrame.setUI(new BasicInternalFrameUI(internalFrame) {

@Override
protected JComponent createNorthPane(JInternalFrame w) {
return null;
}

@Override
protected void installDefaults() {
super.installDefaults();
frame.setBorder(null);
}
});[/Highlight]
Don't blame me. :)

Ebenius
 

cyliax

Mitglied
Tausend Dank, das ist genial!!! Wordaround hin oder her, es soll einfach nur funktionieren und nicht schön sein. Ich muss mir das zwar jetzt nochmal durchdenken was da passiert, aber ich bin schonmal begeistert. Wenn ich noch ne programmiertechnisch schickere Lösung finde, werde ich sie hier präsentieren.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
MiMa Jumping Stage Flash AWT, Swing, JavaFX & SWT 8
M JavaFX Wie füge ich zu einer WebEngine einen Flash Player hinzu AWT, Swing, JavaFX & SWT 3
T Aus JAVA.Jar GUI eine Flash-Datei machen AWT, Swing, JavaFX & SWT 3
J Flash.swf in JFrame einbinden AWT, Swing, JavaFX & SWT 7
J Swing und Flash AWT, Swing, JavaFX & SWT 3
O Quicktime - Movie in Flash? AWT, Swing, JavaFX & SWT 5
M Flash-Movie in JAVA einbinden? AWT, Swing, JavaFX & SWT 3
S Flash? AWT, Swing, JavaFX & SWT 4
L paintComponent in Panel eines Borderlayouts hinzufügen AWT, Swing, JavaFX & SWT 3
A Problem Spiel auf Panel der GUI zu bringen AWT, Swing, JavaFX & SWT 1
CptK Ordentlicher Code & Panel ab bestimmter Komponentenzahl scrollbar machen AWT, Swing, JavaFX & SWT 12
B JTextField in Panel positionieren AWT, Swing, JavaFX & SWT 1
R Swing Panel nur bei Maus sichtbar AWT, Swing, JavaFX & SWT 2
B mit Maus verschiebbares Panel AWT, Swing, JavaFX & SWT 2
S Labels in Panel erstellen AWT, Swing, JavaFX & SWT 1
H Aus Array Container Panel an Tabbedpane zuweisen AWT, Swing, JavaFX & SWT 29
S Swing Panel wird nicht neu gezeichnet AWT, Swing, JavaFX & SWT 3
O Kann kei neues Panel zum zeichnen aufrufen... AWT, Swing, JavaFX & SWT 4
J Overlay Panel statt neues Fenster AWT, Swing, JavaFX & SWT 6
CptK Swing DropdownMenu über Panel-Grenzen hinaus anzeigen AWT, Swing, JavaFX & SWT 1
J Aufklappbares Panel in Toolbar AWT, Swing, JavaFX & SWT 6
L ActionListener zu Button in Panel hinzufügen AWT, Swing, JavaFX & SWT 10
S Swing Panel übernimmt komponenten von anderem AWT, Swing, JavaFX & SWT 7
J Panel auf Frame positionieren AWT, Swing, JavaFX & SWT 9
J JFrame Panel hinzufügen AWT, Swing, JavaFX & SWT 10
B AWT Panel größe im BorderLayout einstellen AWT, Swing, JavaFX & SWT 1
K Swing Entfernen von Panel funktioniert nicht AWT, Swing, JavaFX & SWT 5
L JavaFX Animation für Panel wechsel AWT, Swing, JavaFX & SWT 3
L Swing JTable im Panel darstellen AWT, Swing, JavaFX & SWT 8
L JavaFX Klickverhalten bei einem Panel AWT, Swing, JavaFX & SWT 1
A Swing Panel mit ScrollBar AWT, Swing, JavaFX & SWT 7
K Panel verdeckt MenuItem AWT, Swing, JavaFX & SWT 5
H zwei gleich große Panels getrennt durch ein weiteres Panel AWT, Swing, JavaFX & SWT 10
N Swing Label auf Panel legen.. AWT, Swing, JavaFX & SWT 2
J Panel auf Frame löschen und neues Panel Hinzufügen AWT, Swing, JavaFX & SWT 4
T Swing Graphics auf Panel AWT, Swing, JavaFX & SWT 2
B Swing WindowBuilde: Menu -> anderes Panel wechseln AWT, Swing, JavaFX & SWT 1
U Java FX Zusätzliches Label per Knopfdruck während der Laufzeit auf Panel einfügen. AWT, Swing, JavaFX & SWT 2
P AWT Panel überschreibt vorheriges... AWT, Swing, JavaFX & SWT 2
Thallius Swing Warum kann man Texte im Panel nicht markieren? AWT, Swing, JavaFX & SWT 1
S NetBeans, Panel in Frame einfügen AWT, Swing, JavaFX & SWT 3
M AWT Panel wird nicht angezeigt AWT, Swing, JavaFX & SWT 7
P Fenstergröße ändern, Panel soll gleich bleiben AWT, Swing, JavaFX & SWT 2
M JavaFX Slide Panel AWT, Swing, JavaFX & SWT 2
P Swing Panel nicht sichtbar AWT, Swing, JavaFX & SWT 1
M Swing JtextField Panel in ander Panel aufrufen AWT, Swing, JavaFX & SWT 0
M Panel in geerbter JFrame Klasse adden AWT, Swing, JavaFX & SWT 4
S ScrollPane in Textarea und auf Panel AWT, Swing, JavaFX & SWT 4
D Swing Bei Button Click neues Panel laden AWT, Swing, JavaFX & SWT 3
D Panel wird nicht angezeigt und Fragen zum CardLayout AWT, Swing, JavaFX & SWT 6
S Swing JMenu löscht auf panel gezeichnetes AWT, Swing, JavaFX & SWT 3
X Java Panel zeitweise repainten AWT, Swing, JavaFX & SWT 8
X Panel Probleme (Tetris) AWT, Swing, JavaFX & SWT 8
W Swing Nicht-Editierbares Textfeld in Panel in ScrollPane AWT, Swing, JavaFX & SWT 9
B zweidimensionales Buttonarray auf Panel AWT, Swing, JavaFX & SWT 11
F JAVA-EDITOR: Panel in Frame aufnehmen AWT, Swing, JavaFX & SWT 3
F textarea lässt panel verschwinden AWT, Swing, JavaFX & SWT 4
T LayoutManager GridLayout panel.setSize funktioniert nicht AWT, Swing, JavaFX & SWT 1
A Panel lässt sich nicht bewegen AWT, Swing, JavaFX & SWT 2
E Panel mit Leben füllen AWT, Swing, JavaFX & SWT 2
K Swing Maus in Panel einsperren AWT, Swing, JavaFX & SWT 8
D Panel in Panel zentriert nicht richtig AWT, Swing, JavaFX & SWT 3
P Swing Panel-austausch über einen MenuListener AWT, Swing, JavaFX & SWT 2
1 Swing Bestimme ob ein Subelement eines panel den Fokus verloren hat AWT, Swing, JavaFX & SWT 2
P Swing Button über gesamtes Panel AWT, Swing, JavaFX & SWT 2
O LayoutManager Panel in Panel "maximieren" AWT, Swing, JavaFX & SWT 2
C AWT Horizontale Linie in einem Panel AWT, Swing, JavaFX & SWT 12
T Über mehrere Panel zeichnen AWT, Swing, JavaFX & SWT 2
B Export eines Panel mit ScrollBar AWT, Swing, JavaFX & SWT 4
S Größe von Panel verändern welches auf anderem Panel sitzt AWT, Swing, JavaFX & SWT 10
bluerob Panel im BorderLayout South wird nicht angezeigt AWT, Swing, JavaFX & SWT 5
M Swing Panel klassenübergreifend ändern AWT, Swing, JavaFX & SWT 6
M Swing JFrame in einem Panel zeichnen AWT, Swing, JavaFX & SWT 3
A 2D-Grafik Panel inhalt löschen AWT, Swing, JavaFX & SWT 5
H Scroll Panel wird nicht hinzugefügt AWT, Swing, JavaFX & SWT 6
S Elemente im Panel in richtige Ausgangsstellung bringen AWT, Swing, JavaFX & SWT 10
X Swing Panel Extra Klasse & Aufruf über Button AWT, Swing, JavaFX & SWT 18
Kenan89 2D-Grafik paintComponent quetsch alles in Panel AWT, Swing, JavaFX & SWT 26
C Bild auf Panel vergrößern und verschieben AWT, Swing, JavaFX & SWT 4
C ImageIcon eines Labels auf einem Panel in neuem Fenster anzeigen AWT, Swing, JavaFX & SWT 2
H LayoutManager Panel verschieben sich AWT, Swing, JavaFX & SWT 5
O Swing JTree um Label (oder Panel) erweitern AWT, Swing, JavaFX & SWT 9
S Vaadin: Panel AWT, Swing, JavaFX & SWT 10
R paintComponent malt bei repaint() Rahmen um Panel AWT, Swing, JavaFX & SWT 7
C Etwas durchsichtig machen über einem Panel AWT, Swing, JavaFX & SWT 7
K Panel zu Laufzeit ändern AWT, Swing, JavaFX & SWT 6
T eigene Klasse für Panel AWT, Swing, JavaFX & SWT 9
D Panel aus externer Klasse holen AWT, Swing, JavaFX & SWT 2
L Swing dynamisches Image-Panel in Layout einbinden AWT, Swing, JavaFX & SWT 10
T Listener in anderen Panel deaktivieren AWT, Swing, JavaFX & SWT 3
H Verschiedene JPanels aus eigenen Klassen in JFrame einfügen, nur ein Panel sichtbar AWT, Swing, JavaFX & SWT 4
GUI-Programmer Informations-Panel an Label AWT, Swing, JavaFX & SWT 2
U Elemente im Panel zentrieren mit GridLayout AWT, Swing, JavaFX & SWT 3
J JPanel mit anderem Panel aus anderer Klasse setzen AWT, Swing, JavaFX & SWT 4
F 2D-Grafik Panel-Zeichnung erscheint nicht AWT, Swing, JavaFX & SWT 7
S Panel rapaint AWT, Swing, JavaFX & SWT 18
T AffineTransform wirkt sich nur auf dem ersten Panel aus AWT, Swing, JavaFX & SWT 3
K Swing: Panel in Panel erzeugen AWT, Swing, JavaFX & SWT 11
M Panel in SWT einfügen AWT, Swing, JavaFX & SWT 12
T auf Panel zeichnen AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben