2010-11-25 17 views
0

Ich habe einen JFrame A und 2 JInternalFrame B und C. Ich möchte diese beiden Frames B und C in einem JPanel anstatt in einem JInternalFrame zeigen. Dann werde ich das jpanel auf ein anderes Frame setzen. Also werden B und C beide als eigene JFrame angezeigt. Also meine Frage ist: Wie kann ich JInternalFrame Komponenten zu JPanel verschieben?Java JInternalFrame zu JPanel

Dank

Antwort

1

Es sollte ganz einfach sein, da beide JInternalFrame und JPanel Subklassen von JComponent sind.

Sie können die extends JInternalFrame zu extends JPanel am Anfang des Rahmens umbenennen, den Konstruktor ändern (da IIRC diejenigen von JInternalFrame erfordern Titel, Größe veränderbar und so weiter) und prüfen, ob Kompilierungsfehlern sind (vielleicht ja, aber kleine Dinge) dann sind Sie fertig ..

+0

es ist so einfach wie du denkst.Was ist mit den Aktionen? Ich muss die Aktionen ändern, auch die Zuhörer. – bilal

0

Ich möchte diese beiden Frames B und C in einem JPanel, anstatt einem JInternalFrame zeigen.

Warum? Interne Frames sind für die Verwendung in einem Desktopfenster konzipiert. Um sie richtig in einem JPanel anzeigen zu lassen, müssten Sie das Panel grundsätzlich so anpassen, dass es wie ein Desktopfenster funktioniert. Warum erfinden Sie das Rad neu?

Dann werde ich das Jpanel zu einem anderen Frame. Also werden B und C beide als eigene JFrame angezeigt.

Verschieben Sie den Desktopbereich in einen anderen Frame. Warum verschieben Sie sie zuerst zu einem Panel?

Verwenden Sie die API so, wie sie entwickelt wurde, und Sie werden keine Probleme haben.

+0

, weil ich in meiner Anwendung dockings habe und ich werde dort interne frames zeigen, die ich will. Deshalb muss ich interne Rahmen vom Schreibtisch entfernen. so kann ich verwenden, was ich will – bilal