tenho uma JFrame que abre uma JInternal frame.
Quando a JInternal frame Abre, on componentes da JFrame despararecem…
percebi que é quando chamo o metodo setContentPane(JDesktopPane)
como faço para que os componentes da JFrame voltem apos eu fechar a JInternalFrame, ou que eles nao desapareçam quando eu agrir a JInternalFrame??
obrigado!!
Olá… experimenta postar a parte do código que dá este problema para vermos e entendermos melhor o seu problema…
essa é a classe da janela principal…
[code]public class JanelaPrincipal extends javax.swing.JFrame {
JDesktopPane desktop;
public JanelaPrincipal() {
initComponents();
desktop = new JDesktopPane();
this.setExtendedState(this.MAXIMIZED_BOTH);
}
private void initComponents() {
//componente da JFrame principal
}
private void menuCidadesActionPerformed(java.awt.event.ActionEvent evt) {
// aonde deve abrir a JInternal GrameFrame
MinhaJInternalFrame internalFrame = new MinhaJInternalFrame();
internalFrame.setVisible(true);
desktop.add(internalFrame);
try {
internalFrame.setSelected(true);
} catch (java.beans.PropertyVetoException e) {}
setContentPane(desktop);
desktop.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);
}
}[/code]
e essa da JInternalFrame
[code]public class MinhaJInternalFrame extends javax.swing.JInternalFrame {
/** Creates new form MinhaJInternalFrame */
public MinhaJInternalFrame() {
super("Teste", true, true, true, true);
setSize(300,300);
setLocation(30, 30);
initComponents();
}
}[/code]
peguei o exemplo direto da pagina da sun…
Faltou uma coisinha no seu código:
http://www.guj.com.br/posts/list/50115.java
O contentPane é simplesmente a área do “fundo” de um JFrame.
Reserve uma área própria para o seu DesktopPane. Se você só trocar o ContentPane, vai mandar para o espaço o que tinha no frame mesmo.
mas tem como eu deixar o que jah tem no frame e a JInternalFrame ao mesmo tempo??
Ache um lugarzinho para o seu JDesktopPane dentro do seu frame…