Bom dia!
Eu tenho um JFrame com um JMenuBar e um JTabbedPane. Estes dois componentes só aparecem quando o JFrame está maximizado. O que há de errado?! Existe um layout "ideal"para usar neste caso?!
Meu código:
import java.awt.BorderLayout;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JTabbedPane;
import javax.swing.KeyStroke;
import javax.swing.UIManager;
public class MainFrame extends JFrame {
private JTabbedPane tabPanel;
public MainFrame(){
super("CardPrinter (Sistema para impressão de cartões) SAGEM-ORGA");
this.setSize(800, 700);
this.setVisible(true);
//this.setResizable(false);
//setLayout(new FlowLayout());
getContentPane().add(getTabPanel());
setJMenuBar(new MyMenuBar());
//pack();
}
public JTabbedPane getTabPanel() {
tabPanel = new JTabbedPane();
tabPanel.addTab("Layout", new LayoutEditorPanel());
return tabPanel;
}
public static void main(String args[]) {
try{
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
}
catch(Exception e) {}
new MainFrame();
}
class MyMenuBar extends JMenuBar {
String[] arquivoItems = new String[]{"Abrir arquivo",
"Abrir layout",
"Salvar Layout",
"Sair"};
String[] inserirItems = new String[]{"Texto",
"Imagem",
"Código de barras"};
public MyMenuBar(){
JMenu arquivoMenu = new JMenu("Arquivo");
arquivoMenu.setMnemonic(KeyEvent.VK_A);
for(int i = 0; i < arquivoItems.length; i++){
JMenuItem item = new JMenuItem(arquivoItems[i]);
//item.setMnemonic(KeyEvent.VK_A);
arquivoMenu.add(item);
}
add(arquivoMenu);
}
}
}
Obrigado!