Cordiais saudações, povo do GUJ.
Estou iniciando um programa de pedido e formatando a tela para ter uma base do que fazer. Mas nenhum elemento que eu criei apareceu, nem o botão sair. Sei que é um erro bobo mas eu não sei qual é o erro. O programa é só um esqueleto, ainda nem comecei a fazer os métodos da classe DAO e a própria lógica desta parte do programa ( o GUI) ainda não está definida, estou aprendendo enquanto uso os elementos que já conheço.
Queria pedir que alguém me dissesse como fazer aparecer na tela os objetos criados. Obrigado
No menu principal a chamada a classe que está com problema (GuiPedidoCliente) é feito da seguinte forma, pois ela é uma classe que extende JPanel:
miPedidoCliente.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
bloqueiaMenu();
GuiPedidoCliente label = new GuiPedidoCliente();
contentPane.removeAll();
contentPane.add(label);
contentPane.validate();
}
});
E a classe que os objetos não aparecem na tela está abaixo:
package view;
import dao.PedidoClienteDAO;
import empresaiv.BD;
import empresaiv.GuiMenuPrincipal;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import model.Clientes;
import model.ItensPedidoCliente;
import model.PedidosCliente;
import model.Produtos;
/**
*
* @author Ronaldo Rodrigues Godoi
*/
public class GuiPedidoCliente extends JPanel {
Clientes cliente = new Clientes();
Produtos produto = new Produtos();
PedidosCliente pedidoCliente = new PedidosCliente();
ItensPedidoCliente itemPedido = new ItensPedidoCliente();
ArrayList<ItensPedidoCliente> listaItens = new ArrayList<>();
Date nova_data = new Date();
DateFormat formatoData = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
JTextField tfId_pedido, tfId_cliente, tfId_endereco_entrega,
tfIdCondicao_pag, tfData_pedido, tfId_item, tfId_produto, tfQuantidade,
tfPreco, tfData_entrega;
JLabel lbTituloTela, lbId_pedido, lbId_cliente, lbId_endereco_entrega,
lbIdCondicao_pag, lbData_pedido, lbId_item, lbId_produto, lbQuantidade,
lbPreco, lbData_entrega;
JButton btSair;
JTable tbPedido;
String[] colunas = {"Id item", "Id produto",
"Descrição do produto:", "Quantidade",
"Preco", "Total"};
PedidoClienteDAO pedidoDAO;
public void GuiPedidoCliente() {
inicializarComponentes();
definirEventos();
}
private void inicializarComponentes() {
setLayout(null);
btSair = new JButton(" SAIR ");
lbTituloTela = new JLabel("Pedido a Cliente");
lbId_pedido = new JLabel("Id do Pedido: ");
lbId_cliente = new JLabel("Id do Cliente: ");
lbId_endereco_entrega = new JLabel("Id do Endereço de entrega: ");
lbIdCondicao_pag = new JLabel("Id da Condição de pagamento: ");
lbData_pedido = new JLabel("Data do pedido: ");
lbId_item = new JLabel("Id do Item: ");
lbId_produto = new JLabel("Id do Produto: ");
lbQuantidade = new JLabel("Qtd.: ");
lbPreco = new JLabel("Preço: ");
lbData_entrega = new JLabel("Data de entrega: ");
tfId_pedido = new JTextField(10);
tfId_cliente = new JTextField(10);
tfId_endereco_entrega = new JTextField(10);
tfIdCondicao_pag = new JTextField(10);
tfData_pedido = new JTextField(20);
tfId_item = new JTextField(10);
tfId_produto = new JTextField(10);
tfQuantidade = new JTextField(10);
tfPreco = new JTextField(10);
tfData_entrega = new JTextField(20);
lbTituloTela.setBounds(35, 55, 200, 25);
lbId_pedido.setBounds(35, 80, 100, 25);
lbId_cliente.setBounds(140, 80, 100, 25);
lbId_endereco_entrega.setBounds(250, 80, 200, 25);
lbIdCondicao_pag.setBounds(35, 140, 200, 25);
lbData_pedido.setBounds(240, 140, 100, 25);
lbId_item.setBounds(35, 200, 100, 25);
lbId_produto.setBounds(140, 200, 100, 25);
lbQuantidade.setBounds(245, 200, 50, 25);
lbPreco.setBounds(300, 200, 50, 25);
btSair.setBounds(400, 25, 70, 25);
tfId_pedido.setBounds(35, 110, 100, 25);
tfId_cliente.setBounds(140, 110, 100, 25);
tfId_endereco_entrega.setBounds(250, 110, 200, 25);
tfIdCondicao_pag.setBounds(35, 170, 200, 25);
tfData_pedido.setBounds(240, 170, 100, 25);
tfId_item.setBounds(35, 230, 100, 25);
tfId_produto.setBounds(140, 230, 100, 25);
tfQuantidade.setBounds(245, 230, 50, 25);
tfPreco.setBounds(300, 230, 50, 25);
tbPedido = new JTable(new Object[][] { }, colunas);
tbPedido.setBounds(35, 300, 600, 400);
pedidoDAO = new PedidoClienteDAO();
add(btSair);
add(lbTituloTela);
add(lbTituloTela);
add(lbId_pedido);
add(lbId_cliente);
add(lbId_endereco_entrega);
add(lbIdCondicao_pag);
add(lbData_pedido);
add(lbId_item);
add(lbId_produto);
add(lbQuantidade);
add(lbPreco);
add(lbData_entrega);
add(tfId_pedido);
add(tfId_cliente);
add(tfId_endereco_entrega);
add(tfIdCondicao_pag);
add(tfData_pedido);
add(tfId_item);
add(tfId_produto);
add(tfQuantidade);
add(tfPreco);
add(tfData_entrega);
add(tbPedido);
pedidoDAO = new PedidoClienteDAO();
}
private void definirEventos() {
btSair.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
GuiMenuPrincipal.liberaMenu();
BD.getInstance().close();
setVisible(false);
}
});
}
}
/*
Table: pedidos_cli
Columns:
id varchar(10) PK
id_cliente varchar(16)
id_endereco_entrega varchar(10)
condicao_pag varchar(10)
data_pedido datetime
Table: item_pedido_cli
Columns:
id varchar(10) PK
id_pedido_cli varchar(10)
id_produto varchar(10)
quantidade double
unidade varchar(10)
preco double
data_entrega datetime
*/
Agradeço muito a colaboração.
Atenciosamente,
Ronaldo