Problemas com JInternalFrame e JDesktopPane

3 respostas
D

Estou com um problema com JInternalFrame e JDesktopPane, primeiro criei uma classe que extend a JInternalFrame que será uma janela com formulario para cadastro, uma classe que extend JFrame que é a janela principal do meu aplicativo, ela possui uma instancia do JDesktoPane e gostaria de quando eu clicar no botão novoCadastro abrisse a janela da classe que extende JInternalFrame, ate ai tudo bem, mais não consigo fazer com que a janela abra, aparece apenas o JFrame, tentei criar uma classe so para teste o JInternalFrame e o JDesktopPane, porem nunca aparece o JInternalFrame, segue o codigo abaixo.

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class TesteJInternalFrame extends JFrame
{
   JInternalFrame janelaInterna;
   JDesktopPane painelDesktop;

    public TesteJInternalFrame() 
    {
      super("Teste Internal Frame");
      Container container = getContentPane();
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      painelDesktop = new JDesktopPane();
      painelDesktop.setBounds(100, 100, 4000, 400);
    
      janelaInterna = new JInternalFrame("Teste", true, true, true, true);
      janelaInterna.setBounds(50, 50, 250, 250);
      painelDesktop.add(janelaInterna);
      setContentPane(painelDesktop);
      setSize(800, 600);
      setVisible(true);
      show();
    }
    
    public static void main(String args[])
    {
      TesteJInternalFrame app = new TesteJInternalFrame();
    }
}

3 Respostas

ViniGodoy

Faltou fazer:

T
import javax.swing.JDesktopPane;

import javax.swing.JFrame;

import javax.swing.JInternalFrame;

@SuppressWarnings(“serial”)
public class Frame extends JFrame {

protected JInternalFrame janelaInterna;
protected JDesktopPane painelDesktop;

public Frame() {
	super("Teste Internal Frame");
	janelaInterna = new JInternalFrame
                            ("Teste", true, true, true, true);
	janelaInterna.setBounds(50, 50, 250, 250);
	janelaInterna.setVisible(true);

	painelDesktop = new JDesktopPane();
	painelDesktop.setBounds(100, 100, 4000, 400);
	painelDesktop.add(janelaInterna);
	painelDesktop.setVisible(true);

	setContentPane(painelDesktop);
	setSize(800, 600);
}

public static void main(String[] args) {
	Frame frame = new Frame();
	frame.setVisible(true);
}

}

Escreveram bem, mas faltou foi organização e profissionalismo no código.
Faltou no meu comentário

ViniGodoy

Tiago, sempre que postar código, use a tag code. Aí fica formatadinho que nem o nosso ali em cima. :wink:

Para conhecer esses e outros recursos do forum, veja o link:
http://www.guj.com.br/posts/list/50115.java

Criado 4 de dezembro de 2007
Ultima resposta 7 de dez. de 2007
Respostas 3
Participantes 3