Könnte jemand erklären, was ich mit meinen Klassen falsch mache, dass mein JTabbedPane nicht angezeigt wird, wenn JFrame.setvisible auf true gesetzt ist?Warum wird dieses Swing-Registerkartenfenster nicht angezeigt?
Ja, die Hauptmethode des Programms (die ich hier nicht einfügen werde) verwendet den Event-Dispatching-Thread, um ArionGUI zu initiieren.
Hier ist mein Code für die JFrame:
import javax.swing.*;
public class ArionGUI extends JFrame {
public ArionGUI() {
// Set up GUI frame for Arion
JFrame arionFrame = new JFrame("Arion v 0.01");
// Add Arion Tabbed Pane
arionFrame.getContentPane().add(new ArionTabbedPane());
// Terminate the application when closed
arionFrame.setDefaultCloseOperation(EXIT_ON_CLOSE);
// Set the size of the frame
arionFrame.setSize(500, 500);
// Center window
arionFrame.setLocationRelativeTo(null);
// Prevent user from resizing window
arionFrame.setResizable(false);
// Make Arion frame visible on screen
arionFrame.setVisible(true);
}
}
Und hier ist mein Code für die JTabbedPane:
import javax.swing.JTabbedPane;
import javax.swing.JLabel;
import javax.swing.JComponent;
public class ArionTabbedPane extends JComponent {
JTabbedPane arionTabbedPane;
public ArionTabbedPane() {
arionTabbedPane = new JTabbedPane(JTabbedPane.TOP);
arionTabbedPane.addTab("Characters", new JLabel("This is the characterz tab"));
arionTabbedPane.addTab("Miscellaneous", new JLabel("This is the miscellaneous tab"));
add(arionTabbedPane);
}
}
+1 ich den Code neu erstellen hatte, das Problem zu sehen ... Gut gemacht – OscarRyz
Dank. Ihre erste Antwort ArionTabbedPane sollte JTabbedPane funktioniert erweitern! Das ist alles was ich brauche. – elwynn
Vorsichtig, aber Sie müssen Ihre interne JTabbedPane entfernen, wenn Sie JTabbedPane erweitern möchten. Du wirst es nicht mehr benutzen. Du bist neu Klasse sollte so etwas aussehen wie ich jetzt in die Antwort bearbeiten werde. –