JInternalFrame

7 respostas
tiago.vt

e ae pessoal blz…
Estou desenvolvendo um sisteminha nele crei um Frame que os botões chama internalFrames eu habilitei a opção de fechar esse frame de minimizar ele e mexer no tamanho, só que quando eu chamo ele já abre maximizado e eu diminuo o tamanho dele e ele volta maximizado, e também não consigo minimizar ele alguem pode me da uma luz vo postar o código

this.setSize(612, 270);
		this.setClosable(true);
		this.setResizable(true);
		this.setMaximizable(true);
		this.setIconifiable(true);
		this.setTitle("Cadastro de Clientes");
		this.setContentPane(getJContentPane());
		this.setVisible(true);

7 Respostas

renzonuccitelli

Coloca o código onde as janelas internas são instanciadas e tb toda sua classe que está estendendo o JInteranalFrame.

tiago.vt

Classe que estende o JInternalFrame

package gui;

import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JInternalFrame;

import com.mysql.jdbc.Connection;
import java.awt.Dimension;
import javax.swing.JToolBar;
import java.awt.GridBagLayout;
import javax.swing.JButton;
import javax.swing.ImageIcon;

public class GUICadCliente extends JInternalFrame {

	private JPanel jContentPane = null;	
	private Connection getConnection;
	private JToolBar jJToolBarBar = null;
	private JPanel jPanel = null;
	private JButton jButNovo = null;
	private JButton jButSalvar = null;
	private JButton jButEditar = null;
	/**
	 * This is the xxx default constructor
	 */
	public GUICadCliente(Connection getConnection) {
		super();
		initialize();
		this.getConnection = getConnection;
	}

	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		this.setSize(612, 270);
		this.setClosable(true);
		this.setResizable(true);
		this.setMaximizable(true);
		this.setIconifiable(true);
		this.setTitle("Cadastro de Clientes");
		this.setContentPane(getJContentPane());
		this.setVisible(true);
	}

	/**
	 * This method initializes jContentPane
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getJContentPane() {
		if (jContentPane == null) {
			jContentPane = new JPanel();
			jContentPane.setLayout(new BorderLayout());
			jContentPane.add(getJJToolBarBar(), BorderLayout.NORTH);
			jContentPane.add(getJPanel(), BorderLayout.CENTER);
		}
		return jContentPane;
	}

	/**
	 * This method initializes jJToolBarBar	
	 * 	
	 * @return javax.swing.JToolBar	
	 */
	private JToolBar getJJToolBarBar() {
		if (jJToolBarBar == null) {
			jJToolBarBar = new JToolBar();
			jJToolBarBar.setPreferredSize(new Dimension(18, 40));
			jJToolBarBar.add(getJButNovo());
			jJToolBarBar.add(getJButSalvar());
			jJToolBarBar.add(getJButEditar());
		}
		return jJToolBarBar;
	}

	/**
	 * This method initializes jPanel	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getJPanel() {
		if (jPanel == null) {
			jPanel = new JPanel();
			jPanel.setLayout(new GridBagLayout());
		}
		return jPanel;
	}

	/**
	 * This method initializes jButNovo	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButNovo() {
		if (jButNovo == null) {
			jButNovo = new JButton();
			jButNovo.setIcon(new ImageIcon(getClass().getResource("/img/novo.png")));
			jButNovo.setToolTipText("Novo cadastro");
		}
		return jButNovo;
	}

	/**
	 * This method initializes jButSalvar	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButSalvar() {
		if (jButSalvar == null) {
			jButSalvar = new JButton();
			jButSalvar.setIcon(new ImageIcon(getClass().getResource("/img/Salvar.png")));
			jButSalvar.setToolTipText("Salva Cadastro");
		}
		return jButSalvar;
	}

	/**
	 * This method initializes jButEditar	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButEditar() {
		if (jButEditar == null) {
			jButEditar = new JButton();
			jButEditar.setIcon(new ImageIcon(getClass().getResource("/img/editar.png")));
			jButEditar.setToolTipText("Edita e Salva o cadastro");
		}
		return jButEditar;
	}

}

classe que chama o JIternalFrame

package gui;

import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.awt.Dimension;
import javax.swing.JToolBar;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

import com.mysql.jdbc.Connection;

import util.Conexao;

public class GUIPrincipal extends JFrame {

	private static final long serialVersionUID = 1L;
	private JPanel jContentPane = null;
	private JMenuBar jJMenuBar = null;
	private JMenu jMenArquiv = null;
	private JMenuItem jMenuItemSair = null;
	private JMenu jMenuCadastro = null;
	private JMenuItem jMenuItemCliente = null;
	private JMenuItem jMenuItemVendedor = null;
	private JMenu jMenuOrcamento = null;
	
	private Connection getConnection;
	
	/**
	 * This is the default constructor
	 */
	public GUIPrincipal() {
		super();
		initialize();		
	}

	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		this.setSize(662, 298);
		this.setJMenuBar(getJJMenuBar());
		this.setContentPane(getJContentPane());
		this.setTitle("Orçamentos");
		this.setVisible(true);
		this.setExtendedState(this.MAXIMIZED_BOTH);
		this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
		Conexao con = new Conexao();
		getConnection = con.getConnection();		
	}

	/**
	 * This method initializes jContentPane
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getJContentPane() {
		if (jContentPane == null) {
			jContentPane = new JPanel();
			jContentPane.setLayout(new BorderLayout());			
		}
		return jContentPane;
	}
	/**
	 * This method initializes jJMenuBar	
	 * 	
	 * @return javax.swing.JMenuBar	
	 */
	private JMenuBar getJJMenuBar() {
		if (jJMenuBar == null) {
			jJMenuBar = new JMenuBar();
			jJMenuBar.setPreferredSize(new Dimension(0, 25));
			jJMenuBar.add(getJMenArquiv());
			jJMenuBar.add(getJMenuCadastro());
			jJMenuBar.add(getJMenuOrcamento());
		}
		return jJMenuBar;
	}
	/**
	 * This method initializes jMenArquiv	
	 * 	
	 * @return javax.swing.JMenu	
	 */
	private JMenu getJMenArquiv() {
		if (jMenArquiv == null) {
			jMenArquiv = new JMenu();
			jMenArquiv.setText("Arquivo");
			jMenArquiv.setMnemonic('a');
			jMenArquiv.add(getJMenuItemSair());
		}
		return jMenArquiv;
	}
	/**
	 * This method initializes jMenuItemSair	
	 * 	
	 * @return javax.swing.JMenuItem	
	 */
	private JMenuItem getJMenuItemSair() {
		if (jMenuItemSair == null) {
			jMenuItemSair = new JMenuItem();
			jMenuItemSair.setText("Sair");
			jMenuItemSair.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					System.exit(0);
				}
			});
		}
		return jMenuItemSair;
	}
	/**
	 * This method initializes jMenuCadastro	
	 * 	
	 * @return javax.swing.JMenu	
	 */
	private JMenu getJMenuCadastro() {
		if (jMenuCadastro == null) {
			jMenuCadastro = new JMenu();
			jMenuCadastro.setText("Cadastro");
			jMenuCadastro.setMnemonic('c');
			jMenuCadastro.add(getJMenuItemCliente());
			jMenuCadastro.add(getJMenuItemVendedor());
		}
		return jMenuCadastro;
	}

	/**
	 * This method initializes jMenuItemCliente	
	 * 	
	 * @return javax.swing.JMenuItem	
	 */
	private JMenuItem getJMenuItemCliente() {
		if (jMenuItemCliente == null) {
			jMenuItemCliente = new JMenuItem();
			jMenuItemCliente.setText("Cliente");
			jMenuItemCliente.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					GUICadCliente cadCli = new GUICadCliente(getConnection);
					jContentPane.add(new GUICadCliente(getConnection));
					cadCli.toFront();
					cadCli.setVisible(true);					
				}
			});
		}
		return jMenuItemCliente;
	}

	/**
	 * This method initializes jMenuItemVendedor	
	 * 	
	 * @return javax.swing.JMenuItem	
	 */
	private JMenuItem getJMenuItemVendedor() {
		if (jMenuItemVendedor == null) {
			jMenuItemVendedor = new JMenuItem();
			jMenuItemVendedor.setActionCommand("");
			jMenuItemVendedor.setText("Vendedor");
		}
		return jMenuItemVendedor;
	}

	/**
	 * This method initializes jMenuOrcamento	
	 * 	
	 * @return javax.swing.JMenu	
	 */
	private JMenu getJMenuOrcamento() {
		if (jMenuOrcamento == null) {
			jMenuOrcamento = new JMenu();
			jMenuOrcamento.setText("Orçamento");
			jMenuOrcamento.setMnemonic('o');
		}
		return jMenuOrcamento;
	}

}
M

se voce ja esta usando o “setSize()” não precisa do “setMaximizable()”

Editado para correção de grafia.

tiago.vt

miguel.satriani:
se voce ja esta usando o “setSize()” não precisa do “setMaximizable()”

Editado para correção de grafia.

comentei o setSize() continuo a mesma coisa depois comente o setMaximzable() mesma coisa também

M

voce usa alguma função para desmaximizar o internal frame?

tiago.vt

não fiz nada em um outro projeto que eu fiz eu nas propriedades do InternalFrame habilitei que ele pode ser minimizado e maximizado e e fechar e funciono certinho agora nessa ta com esse problema

“Estou usando o visual editor do eclipse”

renzonuccitelli

Bom, uma mudança que vc poderia fazer era em vez de setar as propriedades no método initialize, já poderia usar o outro construtor do JInternalFrame:

super(titulo,true,true,true,true);, mas isso é questao de gosto.

Segundo: o contentePane que vc está usado na classe que instancia a janela interna é do tipo JPanel. Na realidade, vc tem que colocar o JDesktopPane para a aplicacao funcionar do jeito que vc quer. Por isso ele nao minimiza. Mude o tipo do seu panel então para ver se funciona…

Criado 1 de dezembro de 2008
Ultima resposta 2 de dez. de 2008
Respostas 7
Participantes 3