JInternalFrame Größe und Location nicht einstellbar

Status
Nicht offen für weitere Antworten.

megachucky

Bekanntes Mitglied
Hallo.

Habe folgendes InternalWindow:

Code:
package client;

import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;

import javax.swing.JInternalFrame;

public class AboutWindow extends JInternalFrame
{
	public AboutWindow()
	{
		super("About");
		
		setSize(new Dimension(100, 50));
		setLocation(100,100);
		
		
		Container contentPane = getContentPane();
		
		setDefaultCloseOperation(JInternalFrame.EXIT_ON_CLOSE);
		contentPane.setBackground(Color.ORANGE);
		
		pack();
		setVisible(true);
	}
	
}

Dieses füge ich einem anderen JFrame Fenster hinzu (über ein Menü mit ActionListener):

getContentPane().add(new AboutWindow());


Das AboutWindow öffnet sich auch, besetzt aber den ganzen Bildschrim und lässt sich mit setSize und setLocation auch nicht ändern ?!? Hab es auch mit und ohne pack() versucht, bringt auch nix.

Kann mir bitte jemand helfen?

Habe gelesen, dass man normal für InternalFrames als contentPane JDesktopPane nimmt, aber was mache ich wenn ich eben auch noch zb Buttons haben will und dieses InternalFrame bei einer contentPane?

Muss ich zwei contentPanes nutzen?

Oder was ist die Lösung für mein Problem? Muss doch eigentlich einfacher gehen, einfach die Größe zu ändern?
 
Ja, das habe ich schon verstanden.

Deswegen ist mir trotzdem nicht klar, was ich jetzt machen muss ?!?
 
Wenn du's verstanden hast, warum setzt du ihn dann auf die ContentPane eines JFrames anstatt auf eine JDesktopPane?
 
Das ist ja genau mein Problem, was mir nicht klar ist:

jdesktopPane.add(internalWindow).

Das ist mir klar.

Aber wohin mit dieser jdesktopPane? Im JFrame Fenster habe ich ja schon eine contentPane (die von JFrame eben).

Und wenn ich mache:

jframe.setContentPane(jdesktopPane)

geht zwar das internalWindow, aber die anderen Sachen sind ja dem von jframe zugewiesen.

Oder kann ich alles, was ich normal dem pane von jframe zuweise auch jdesktopPane zuweisen?



Ich hoffe du verstehst jetzt, was mir nicht klar ist.
 
Setz doch einfach die DesktopPane auf die ContentPane, anstatt sie selbst als ContentPane zu benutzen...
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben