Painel não é exibido na tela

3 respostas
C

Olá pessoal, estou iniciando swing,
to trabalhando com o eclipse...
To tendo dificuldade em inserir um dos paineis que contem labels e buttons no Container

to postando o código, quem puder dá uma orientação aí,
tentei várias formas.. mas até agora nada

import java.awt.Container;
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.JToolBar;
import javax.swing.border.EtchedBorder;
import javax.swing.table.DefaultTableModel;


public class Produtos extends JFrame implements ActionListener {
	
	private JPanel panelAcoes = new JPanel();
	private JPanel panelDados = new JPanel();
	private JToolBar toolBar = new JToolBar();
	private JButton btnNovoProduto = new JButton();
	private JButton btnExportarProduto = new JButton();
	private JButton btnImportarProdutos = new JButton();
	private JButton btnConsultarProdutos = new JButton();
	private JButton btnGravarProdutos = new JButton();
	private JButton btnAlterarProdutos = new JButton();
	private JButton btnExcluirProdutos= new JButton();
	private ReadOnlyTable jtTabelaProdutos = new ReadOnlyTable();
	private ReadOnlyTable jtTabelaOcula = new ReadOnlyTable();
	private JScrollPane scrollTabela = new JScrollPane(jtTabelaProdutos);
	private JLabel lblMarca = new JLabel();
	private JTextField tfMarca = new JTextField();
	private JLabel lblModelo= new JLabel();
	private JTextField tfModelo= new JTextField();
	private JLabel lblGenero = new JLabel();
	private JComboBox cboGenero = new JComboBox();
	private JLabel lblTamanho = new JLabel();
	private JTextField tfTamanho = new JTextField();
	private JLabel lblCor= new JLabel();
	private JTextField tfCor = new JTextField();
	private JLabel lblFornecedor = new JLabel();
	private JComboBox cboFornecedor = new JComboBox();
	private JLabel lblValorUnitarioCompra= new JLabel();
	private JTextField tfValorUnitarioCompra= new JTextField();
	private JLabel lblValorUnitarioVenda = new JLabel();
	private JTextField tfValorUnitarioVenda = new JTextField();
	private JLabel lblConsultar = new JLabel();
	private JTextField tfConsultar = new JTextField();
	private JLabel lblRegistro = new JLabel();
	
    public Produtos(){
        setTitle("Cadastro de Produtos -  Sapatos");
        setBounds(50, 50, 605, 600);  
        setVisible(true);
        setResizable(false);   
        Container contentProdutos = getContentPane();
        contentProdutos.setLayout(null);
        setLocationRelativeTo(null); 
        
        gerarToolBar();
        gerarPainelInferior();
        gerarPainelDados();
        contentProdutos.add(toolBar);
        contentProdutos.add(panelAcoes);
        contentProdutos.add(panelDados);
    }
    
    private void gerarPainelDados() {
    	panelDados.setBorder(new EtchedBorder());
        panelDados.setLayout(null);
      
      //-------lblMarca
        lblMarca.setText("Marca");
        panelDados.add(lblMarca);
        
}

	private void gerarPainelInferior() {
	//	panelAcoes.setVisible(true);
		panelAcoes.setBorder(new EtchedBorder());
        panelAcoes.setLayout(null);
        panelAcoes.setBounds(2, 5, 500, 31);
        
		//------ lblConsultar
		lblConsultar.setText("Consultar:");
		panelAcoes.add(lblConsultar);
		
		//------tfConsultar
		tfConsultar.getText();
		panelAcoes.add(tfConsultar);
		
		
    	//-----btnGravarProdutos
    	btnGravarProdutos.setText("Gravar");
    	btnGravarProdutos.addActionListener(this);
    	btnGravarProdutos.setBorder(new EtchedBorder());
    	panelAcoes.add(btnGravarProdutos);

		//------btnAlterarProdutos
		btnAlterarProdutos.setText("Produtos");
		btnAlterarProdutos.addActionListener(this);
		btnAlterarProdutos.setBorder(new EtchedBorder());
		panelAcoes.add(btnAlterarProdutos);
		
		//------btnExcluirProdutos
		btnExcluirProdutos.setText("Excluir");
		btnExcluirProdutos.addActionListener(this);
		btnExcluirProdutos.setBorder(new EtchedBorder());
		panelAcoes.add(btnExcluirProdutos);
}

	private void gerarToolBar() {
    	 toolBar.setFloatable(false);
         
         //---- btnNovoProduto ----
         btnNovoProduto.setText("Novo Produto");
         btnNovoProduto.setBorder(new EtchedBorder()); //BORDA AJUSTADA, MELHOR LAYOUT DO BOTAO
         btnNovoProduto.addActionListener(this); 
         toolBar.add(btnNovoProduto);
         toolBar.addSeparator(); //ESPAÇAMENTO ENTRE OS BOTÕES
         
         
         //---- btnExportarProduto ----
         btnExportarProduto.setText("Exportar Produtos");
         btnExportarProduto.setBorder(new EtchedBorder());
         btnExportarProduto.addActionListener(this);
         toolBar.add(btnExportarProduto);
         toolBar.addSeparator();
         
         
         //---- btnTImportar ----
         btnImportarProdutos.setText("Importar Produtos");
         btnImportarProdutos.setBorder(new EtchedBorder());
         btnImportarProdutos.addActionListener(this);
         toolBar.add(btnImportarProdutos);
         toolBar.addSeparator();
         
         toolBar.setBounds(0, 0, 500, 31);
    }

	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub
		
	}
	
}

3 Respostas

criador

Para podermos testar este seu código, precisamos também da classe ReadOnlyTable.

Abraço!

lina

Oi,

Você não colocou nenhum tamanho para o painel .

Coloque um cor de fundo para ver se realmente não estão aparecendo:

Tchauzin!

lina

Oi,

OBS: panelAcoes o setBounds está com a posição y errada. Ou seja, ficando por cima de outros componentes.

OBS2: Todos os campos adicionados no painelDados e panelAcoes não foi definido um tamanho (setBounds), logo não irão aparecer.

Tchauzin!

Criado 24 de setembro de 2009
Ultima resposta 1 de out. de 2009
Respostas 3
Participantes 3