Erro em posicionar componentes com GridBagLayout

1 resposta
V

Pessoal estou com problema em posicionar os componentes usando o GridBagLayout, tipo estou tentando deixar o JPanel no topo, só que ele não sai do centro.

Códigos:
import java.awt.Color;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFormattedTextField;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import org.jdesktop.swingx.JXFrame;
/**
 *
 * @author Victor Hugo
 */
public class ProcuraProdutos extends Conexao {
 
    private Statement stmt;
    private ResultSet rs;
    private ResultSetMetaData rsmd;
 
    private ImageIcon imgProcuraProdutos =new ImageIcon("imgProcuraProdutos.jpg");
    private JLabel lblImg =new JLabel(imgProcuraProdutos);
 
    private JLabel lblProcuraCpf =new JLabel("Entre com o numero do CPF do cliente:");
    private JFormattedTextField txtProcuraCpf;
 
    private JTable tableProcuraClientes;
    private DefaultTableModel model =new DefaultTableModel();
 
    private JScrollPane scroll =new JScrollPane();
 
    private JButton btnPesquisar =new JButton("Pesquisar");
    private JButton btnOk =new JButton("Ok");
    private JButton btnCancelar1 =new JButton("Cancelar");
 
    private JPanel panelProcuraProdutos =new JPanel();
    private JPanel panelTop =new JPanel();
    private JPanel panelTable =new JPanel();
    private JPanel panelBtn =new JPanel();
 
    private GridBagLayout layout =new GridBagLayout();
    private GridBagConstraints gbc =new GridBagConstraints();
 
    //Construtor
    public ProcuraProdutos() {
        inicializeProcuraProdutos();
    }
 
    //Método de contrução do ProcuraProdutos
    public void inicializeProcuraProdutos() {
        JXFrame.setDefaultLookAndFeelDecorated(true);
        final JXFrame frameProcuraProdutos =new JXFrame();
        frameProcuraProdutos.setTitle("ProcuraClientes");
        frameProcuraProdutos.setSize(700, 400);
        frameProcuraProdutos.setLocation(200, 200);
 
        panelProcuraProdutos.setLayout(layout);
        panelProcuraProdutos.setBackground(Color.white);
 
        gbc.gridy = 1;
        gbc.gridx = 0;
        gbc.gridwidth = 4;
        panelTop.setBackground(Color.red);
        panelTop.add(lblImg);
        panelProcuraProdutos.add(panelTop, gbc);
 
        frameProcuraProdutos.getContentPane().add(panelProcuraProdutos);
        frameProcuraProdutos.setDefaultCloseOperation(JXFrame.EXIT_ON_CLOSE);
        frameProcuraProdutos.setVisible(true);
 
        }
 
    public static void main(String[] args) {
        new ProcuraProdutos();
    }
 
 
}

Quem poder ajudar, desde já agradeço

1 Resposta

D

acho que só adicionando outros componentes para mover o panel…

Tente utilizar o BorderLayout. É mais simples…

abraço,
:wink:

Criado 19 de dezembro de 2008
Ultima resposta 31 de dez. de 2008
Respostas 1
Participantes 2