私はnetbeansを使用しています.netbeansでJFrame
フォームを作成し、編集した次のクラスを作成しました:
public class Gui extends javax.swing.JFrame {
public Gui() {
initComponents();
this.setVisible(false);
this.setLocationRelativeTo(null); // finestra al centro dello schermo
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 804, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 536, Short.MAX_VALUE)
);
pack();
}// </editor-fold>
}
その後、JPanel
以前に追加したいクラスを作成しましたGui
JFrame
:
public class Gui_JTabbedPane extends JPanel {
public Gui_JTabbedPane() {
super(new GridLayout(1, 1));
JTabbedPane tabbedPane = new JTabbedPane();
JComponent panel1 = makeTextPanel("Try");
tabbedPane.addTab("Try", panel1, "Does nothing");
tabbedPane.setMnemonicAt(0, KeyEvent.VK_1);
add(tabbedPane);
tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
}
protected JComponent makeTextPanel(String text) {
JPanel panel = new JPanel(false);
JLabel filler = new JLabel(text);
filler.setHorizontalAlignment(JLabel.CENTER);
panel.setLayout(new GridLayout(1, 1));
panel.add(filler);
return panel;
}
}
したがって、私のメインクラスではこれを行いました:
Gui_JTabbedPane tabbedpane = new Gui_JTabbedPane();
Gui gui = new Gui();
gui.add( tabbedpane );
gui.setVisible(true);
問題は、 ('GuiJTabbedPane`) を入れJFrame
ずに (Gui)だけを表示することです。JPanel
代わりに、最初のクラス (Gui) を編集すると、削除initComponents();
はJFrame
表示されませんが、今回は表示されJPanel
ます。
これら2つのクラスを使用/編集するだけで解決するにはどうすればよいですか?
ありがとう