Pessoal, to fazendo testes aqui com InternalFrame, alguem sabe me ajudar ou me dizer pq meu InternalFrame esta em branco? E tudo que add nele nao aparece? kkk
Aqui chama meu InternalFrame:
package com.gui;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import net.miginfocom.swing.MigLayout;
public class GUI extends JFrame {
JDesktopPane desk;
JPanel panel;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable(){
@Override
public void run() {
new GUI().setVisible(true);
}
});
}
public GUI(){
this.initFrame();
this.pack();
this.setExtendedState(MAXIMIZED_BOTH);
}
public void initFrame(){
this.desk = this.getDesktopPane();
this.panel = this.getPanel();
this.setContentPane(this.panel);
JMenuBar menuBar = new JMenuBar();
this.setJMenuBar(menuBar);
JMenu menu = new JMenu("Teste");
menuBar.add(menu);
JMenuItem menuItem = new JMenuItem("Internal");
menuItem.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
GUI.this.panel.add(GUI.this.desk, "dock center");
}
});
menu.add(menuItem);
}
public JPanel getPanel(){
JPanel panel = new JPanel();
MigLayout mig = new MigLayout("","[grow]", "[grow]");
panel.setLayout(mig);
return panel;
}
public JDesktopPane getDesktopPane(){
Internal internalFrame = new Internal();
this.desk = new JDesktopPane();
this.desk.add(internalFrame);
internalFrame.setVisible(true);
return desk;
}
}
Meu InternalFrame:
package com.gui;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import net.miginfocom.swing.MigLayout;
public class Internal extends JInternalFrame {
Internal(){
this.setVisible(true);
//this.setMaximizable(this.maximizable);
this.initInternal();
this.setResizable(false);
}
public void initInternal(){
JLabel label = this.getLabel();
label.setName("Nome: ");
JTextField text = this.getTextField();
JPanel panel = this.getPanel();
panel.add(label);
panel.add(text);
this.setContentPane(panel);
}
public JLabel getLabel(){
JLabel label = new JLabel();
return label;
}
public JPanel getPanel(){
JPanel panel = new JPanel();
panel.setLayout(new MigLayout("", "[grow]", "[grow]"));
return panel;
}
public JTextField getTextField(){
JTextField textField = new JTextField();
return textField;
}
}

