e me corrija se eu estiver errado, em TelaCadProduto e TelaTrocaOleo vc tem um botão que quando é clicado vc instancia TelaConsultaProduto
e exibe essa nova tela e daí a depender da tela que originou a chamada terá um tratamento certo?
Isto mesmo jeffepalmares, isto mesmo.
Viu jeffepalmares sei que a programação feita, não atende as boas politicas de POO mas como disse é um trabalho da faculdade.
Tem codigo pra caramba :shock: :shock:
Observação os locais que chama eu deixei um comentario
//////////////////////////////// AQUI CHAMA TELA CONSULTA PRODUTO ///////////////////////////////
/////////////////////////////////////////////////////// TERMINA ///////////////////////////////////////////
TELACADPRODUTO
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/*
* TelaCadProduto.java
*
* Created on 28/10/2011, 11:02:14
*/
package controloil;
import java.sql.ResultSet;
import java.util.ArrayList;
import javax.swing.JOptionPane;
/**
*
* @author aluno
*/
public class TelaCadProduto extends javax.swing.JDialog {
private boolean busca=false;
private ArrayList vcodmarca = new ArrayList();
private String codigo;
private String verifica="";
/** Creates new form TelaCadProduto */
public TelaCadProduto(java.awt.Frame parent, boolean modal) {
super(parent, modal);
initComponents();
desabilitarTudo();
bNovo.setEnabled(true);
bBusca.setEnabled(true);
montaTela();
tDescr.setDocument(new CaixaDeTextoEmMaiuscula());
}
public String getVerifica()
{
return verifica;
}
private void desabilitarTudo(){
for(int i = 0; i <jPanel2.getComponentCount();i++)
//if(!(jPanel2.getComponent(i) instanceof JLabel))
jPanel2.getComponent(i).setEnabled(false);
for(int i = 0; i <jPanel1.getComponentCount();i++)
//if(!(jPanel2.getComponent(i) instanceof JLabel))
jPanel1.getComponent(i).setEnabled(false);
bCancelar.setEnabled(true);
}
private void habilitarTudo(){
for(int i = 0; i <jPanel2.getComponentCount();i++)
//if(!(jPanel2.getComponent(i) instanceof JLabel))
jPanel2.getComponent(i).setEnabled(true);
for(int i = 0; i <jPanel1.getComponentCount();i++)
//if(!(jPanel2.getComponent(i) instanceof JLabel))
jPanel1.getComponent(i).setEnabled(true);
}
private void montaTela(){
tDescr.setText("");
tEstoque.setText("");
tPreco.setText("");
ResultSet rs = Banco.con.consultar("select * from marca");
String smarca;
cbMarca.removeAllItems();
try
{
while(rs.next())
{
smarca=rs.getString("mar_desc");
cbMarca.addItem(smarca);
vcodmarca.add(rs.getString("mar_cod"));
}
}
catch(Exception e){}
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
bNovo = new javax.swing.JButton();
bAlterar = new javax.swing.JButton();
bExcluir = new javax.swing.JButton();
bInserir = new javax.swing.JButton();
bCancelar = new javax.swing.JButton();
jPanel2 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
tDescr = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
cbMarca = new javax.swing.JComboBox();
jLabel3 = new javax.swing.JLabel();
cbUnidade = new javax.swing.JComboBox();
tPreco = new javax.swing.JTextField();
tEstoque = new javax.swing.JTextField();
jLabel4 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
bBusca = new javax.swing.JButton();
jPanel3 = new javax.swing.JPanel();
jLabel6 = new javax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setTitle("Cadastro de Produtos");
jPanel1.setBackground(new java.awt.Color(0, 0, 0));
bNovo.setFont(new java.awt.Font("Tahoma", 0, 10));
bNovo.setText("Novo");
bNovo.setPreferredSize(new java.awt.Dimension(90, 32));
bNovo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bNovoActionPerformed(evt);
}
});
jPanel1.add(bNovo);
bAlterar.setFont(new java.awt.Font("Tahoma", 0, 10)); // NOI18N
bAlterar.setText("Alterar");
bAlterar.setPreferredSize(new java.awt.Dimension(90, 32));
bAlterar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bAlterarActionPerformed(evt);
}
});
jPanel1.add(bAlterar);
bExcluir.setFont(new java.awt.Font("Tahoma", 0, 10)); // NOI18N
bExcluir.setText("Excluir");
bExcluir.setPreferredSize(new java.awt.Dimension(90, 32));
bExcluir.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bExcluirActionPerformed(evt);
}
});
jPanel1.add(bExcluir);
bInserir.setFont(new java.awt.Font("Tahoma", 0, 10));
bInserir.setText("Inserir");
bInserir.setPreferredSize(new java.awt.Dimension(90, 32));
bInserir.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bInserirActionPerformed(evt);
}
});
jPanel1.add(bInserir);
bCancelar.setFont(new java.awt.Font("Tahoma", 0, 10));
bCancelar.setText("Cancelar");
bCancelar.setPreferredSize(new java.awt.Dimension(90, 32));
bCancelar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bCancelarActionPerformed(evt);
}
});
jPanel1.add(bCancelar);
jPanel2.setBackground(new java.awt.Color(0, 0, 0));
jLabel1.setForeground(new java.awt.Color(255, 255, 255));
jLabel1.setText("Produto:");
jLabel2.setForeground(new java.awt.Color(255, 255, 255));
jLabel2.setText("Marca:");
jLabel3.setForeground(new java.awt.Color(255, 255, 255));
jLabel3.setText("Unidade:");
cbUnidade.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "1L", "2L", "5L", "20L", "30L", "40", "PÇ" }));
tPreco.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
tEstoque.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
jLabel4.setForeground(new java.awt.Color(255, 255, 255));
jLabel4.setText("Qtde em Estoque:");
jLabel5.setForeground(new java.awt.Color(255, 255, 255));
jLabel5.setText("Preço:");
bBusca.setIcon(new javax.swing.ImageIcon(getClass().getResource("/icones/lupa.gif"))); // NOI18N
bBusca.setBorder(null);
bBusca.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bBuscaActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(cbMarca, 0, 548, Short.MAX_VALUE)
.addComponent(jLabel2)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addComponent(cbUnidade, 0, 312, Short.MAX_VALUE)
.addGap(18, 18, 18))
.addGroup(jPanel2Layout.createSequentialGroup()
.addComponent(jLabel3)
.addGap(216, 216, 216)))
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(tEstoque, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel5)
.addComponent(tPreco, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(jPanel2Layout.createSequentialGroup()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel1)
.addComponent(tDescr, javax.swing.GroupLayout.DEFAULT_SIZE, 518, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bBusca, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap())
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(bBusca, 0, 0, Short.MAX_VALUE)
.addComponent(tDescr))
.addGap(22, 22, 22)
.addComponent(jLabel2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(cbMarca, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(jLabel4)
.addComponent(jLabel5))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(cbUnidade, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(tPreco, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(tEstoque, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jPanel3.setBackground(javax.swing.UIManager.getDefaults().getColor("Button.focus"));
jLabel6.setBackground(new java.awt.Color(255, 255, 255));
jLabel6.setFont(new java.awt.Font("Tahoma", 0, 24));
jLabel6.setForeground(javax.swing.UIManager.getDefaults().getColor("Button.background"));
jLabel6.setText("Cadastro de Produtos");
javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createSequentialGroup()
.addContainerGap(329, Short.MAX_VALUE)
.addComponent(jLabel6)
.addContainerGap())
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel6)
.addContainerGap())
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 568, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 45, Short.MAX_VALUE))
);
java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
setBounds((screenSize.width-584)/2, (screenSize.height-328)/2, 584, 328);
}// </editor-fold>
private void bExcluirActionPerformed(java.awt.event.ActionEvent evt) {
String mar_cod = (String)vcodmarca.get(cbMarca.getSelectedIndex());
String pro_desc=tDescr.getText();
String pro_unidade=cbUnidade.getSelectedItem().toString();
String pro_estoque=tEstoque.getText();
String pro_preco=tPreco.getText();
if(mar_cod.isEmpty() || pro_desc.isEmpty() || pro_unidade.isEmpty() || pro_estoque.isEmpty() || pro_preco.isEmpty())
{
JOptionPane.showMessageDialog(this, "Não existe dados a ser excluido");
}
else
{
int op = JOptionPane.showConfirmDialog(this, "Deseja Excluir ?");
if(op==JOptionPane.YES_OPTION)
{
String sql ="delete from produto where pro_cod="+codigo;
if(Banco.con.manipular(sql))
sql="Produto excluido com sucesso";
else
sql="Probelma ao excluir";
JOptionPane.showMessageDialog(null, sql);
}
desabilitarTudo();
bNovo.setEnabled(true);
bBusca.setEnabled(true);
}
}
private void bNovoActionPerformed(java.awt.event.ActionEvent evt) {
habilitarTudo();
bNovo.setEnabled(true);
bAlterar.setEnabled(true);
bExcluir.setEnabled(true);
bBusca.setEnabled(true);
}
///////////////////////////////////////////////////////////////////////////////////AQUI CHAMA TELA CONSULTA PRODUTO //////////////////////////////
private void bBuscaActionPerformed(java.awt.event.ActionEvent evt) {
verifica = "TelaCadProduto";
TelaConsultaProdutos tela=new TelaConsultaProdutos(null, true);
tela.setVisible(true);
codigo = tela.getCodigo();
String sql="select mar_cod, pro_desc, pro_unidade, pro_estoque, pro_preco "
+ "from produto where pro_cod="+codigo;
ResultSet rs = Banco.con.consultar(sql);
try
{
if(rs.next())
{
tDescr.setText(rs.getString("pro_desc"));
tEstoque.setText(rs.getString("pro_estoque"));
tPreco.setText(rs.getString("pro_preco"));
cbUnidade.setSelectedItem(rs.getString("pro_unidade").trim());
int i=vcodmarca.indexOf(rs.getString("mar_cod"));
cbMarca.setSelectedIndex(i);
}
}
catch(Exception erro)
{
}
habilitarTudo();
bNovo.setEnabled(false);
bInserir.setEnabled(false);
busca =true;
}
///////////////////////////////////////////////////////////////////////////////////////// TERMINA //////////////////////////////
private void bAlterarActionPerformed(java.awt.event.ActionEvent evt) {
String mar_cod = (String)vcodmarca.get(cbMarca.getSelectedIndex());
String pro_desc=tDescr.getText();
String pro_unidade=cbUnidade.getSelectedItem().toString();
String pro_estoque=tEstoque.getText();
String pro_preco=tPreco.getText();
if(mar_cod.isEmpty() || pro_desc.isEmpty() || pro_unidade.isEmpty() || pro_estoque.isEmpty() || pro_preco.isEmpty())
{
JOptionPane.showMessageDialog(this, "Não existe dados a ser alterado");
}
else
{
int op = JOptionPane.showConfirmDialog(this, "Deseja Alterar ?");
if(op==JOptionPane.YES_OPTION)
{
String sql = "update produto set mar_cod='"+mar_cod+"', pro_desc='"+pro_desc+"', pro_unidade='"+pro_unidade+"', pro_estoque='"+pro_estoque+"', pro_preco='"+pro_preco+"'"
+" where pro_cod="+codigo;
//String sql = "update produto set mar_cod='#1', pro_desc='#2', pro_unidade='#3', pro_estoque='#4', pro_preco='#5' where pro_cod="+codigo;
//sql=sql.replace("#1", mar_cod);
//sql=sql.replace("#2", pro_desc);
//sql=sql.replace("#3", pro_unidade);
//sql=sql.replace("#4", pro_estoque);
//sql=sql.replace("#5", pro_preco);
if(Banco.con.manipular(sql))
sql="Produto alterado com sucesso";
else
sql="Problema ao alterar produto";
JOptionPane.showMessageDialog(null, sql);
}
desabilitarTudo();
bNovo.setEnabled(true);
bBusca.setEnabled(true);
busca =false;
}
}
private void bCancelarActionPerformed(java.awt.event.ActionEvent evt) {
if(busca)
{
desabilitarTudo();
bNovo.setEnabled(true);
bBusca.setEnabled(true);
busca=false;
}
else
dispose();
}
private void bInserirActionPerformed(java.awt.event.ActionEvent evt) {
String mar_cod = (String)vcodmarca.get(cbMarca.getSelectedIndex());
String pro_desc=tDescr.getText();
String pro_unidade=cbUnidade.getSelectedItem().toString();
String pro_estoque=tEstoque.getText();
String pro_preco=tPreco.getText();
if(mar_cod.isEmpty() || pro_desc.isEmpty() || pro_unidade.isEmpty() || pro_estoque.isEmpty() || pro_preco.isEmpty())
{
JOptionPane.showMessageDialog(this, "Campos:\nProduto, Marca, Unidade, Estoque, Preço\nPreenchimento Necessário !");
}
else
{
String sql = "insert into produto"
+"(mar_cod, pro_desc, pro_unidade, pro_estoque, pro_preco)"
+"values(#1,'#2','#3','#4','#5')";
sql=sql.replace("#1", mar_cod);
sql=sql.replace("#2", pro_desc);
sql=sql.replace("#3", pro_unidade);
sql=sql.replace("#4", pro_estoque);
sql=sql.replace("#5", pro_preco);
if(Banco.con.manipular(sql))
JOptionPane.showMessageDialog(this, "Produto cadastrado !");
else
JOptionPane.showMessageDialog(this, "Erro"+Banco.con.getMensagemErro());
desabilitarTudo();
bNovo.setEnabled(true);
bBusca.setEnabled(true);
montaTela();
}
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
TelaCadProduto dialog = new TelaCadProduto(new javax.swing.JFrame(), true);
dialog.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent e) {
System.exit(0);
}
});
dialog.setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton bAlterar;
private javax.swing.JButton bBusca;
private javax.swing.JButton bCancelar;
private javax.swing.JButton bExcluir;
private javax.swing.JButton bInserir;
private javax.swing.JButton bNovo;
private javax.swing.JComboBox cbMarca;
private javax.swing.JComboBox cbUnidade;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JTextField tDescr;
private javax.swing.JTextField tEstoque;
private javax.swing.JTextField tPreco;
// End of variables declaration
}
TELATROCAOLEO
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/*
* TelaTrocaOleo.java
*
* Created on 12/11/2011, 10:49:29
*/
package controloil;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
/**
*
* @author Luiz Chequini
*/
public class TelaTrocaOleo extends javax.swing.JDialog {
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
private boolean busca=false;
private String codigo;
private double soma=0;
/** Creates new form TelaTrocaOleo */
public TelaTrocaOleo(java.awt.Frame parent, boolean modal) {
super(parent, modal);
initComponents();
String data = sdf.format(new Date());
tData.setText(data);
tNome.setDocument(new CaixaDeTextoEmMaiuscula());
tProduto.setDocument(new CaixaDeTextoEmMaiuscula());
tVeiculo.setDocument(new CaixaDeTextoEmMaiuscula());
}
private void desabilitarTudo()
{
for(int i = 0; i <jPanel1.getComponentCount();i++)
//if(!(jPanel2.getComponent(i) instanceof JLabel))
jPanel1.getComponent(i).setEnabled(false);
for(int i = 0; i <jPanel3.getComponentCount();i++)
//if(!(jPanel2.getComponent(i) instanceof JLabel))
jPanel3.getComponent(i).setEnabled(false);
bCancelar.setEnabled(true);
}
private void habilitarTudo(){
for(int i = 0; i <jPanel1.getComponentCount();i++)
//if(!(jPanel2.getComponent(i) instanceof JLabel))
jPanel1.getComponent(i).setEnabled(true);
for(int i = 0; i <jPanel3.getComponentCount();i++)
//if(!(jPanel2.getComponent(i) instanceof JLabel))
jPanel3.getComponent(i).setEnabled(true);
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel2 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jPanel1 = new javax.swing.JPanel();
bConfirmar = new javax.swing.JButton();
bCancelar = new javax.swing.JButton();
jPanel3 = new javax.swing.JPanel();
jPanel4 = new javax.swing.JPanel();
bProduto = new javax.swing.JButton();
tProduto = new javax.swing.JTextField();
sQuant = new javax.swing.JSpinner();
bMenos = new javax.swing.JButton();
bMais = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jTotal = new javax.swing.JLabel();
bCliente = new javax.swing.JButton();
jLabel2 = new javax.swing.JLabel();
tNome = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
tKm = new javax.swing.JTextField();
jLabel4 = new javax.swing.JLabel();
tVeiculo = new javax.swing.JTextField();
tCod = new javax.swing.JTextField();
tData = new javax.swing.JFormattedTextField();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setTitle("Troca de Óleo");
jPanel2.setBackground(javax.swing.UIManager.getDefaults().getColor("Button.focus"));
jLabel1.setBackground(new java.awt.Color(255, 255, 255));
jLabel1.setFont(new java.awt.Font("Tahoma", 0, 24));
jLabel1.setForeground(javax.swing.UIManager.getDefaults().getColor("Button.background"));
jLabel1.setText("Troca de Óleo");
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
.addContainerGap(524, Short.MAX_VALUE)
.addComponent(jLabel1)
.addContainerGap())
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jPanel1.setBackground(new java.awt.Color(0, 0, 0));
bConfirmar.setText("Confirmar");
bConfirmar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bConfirmarActionPerformed(evt);
}
});
bCancelar.setText("Cancelar");
bCancelar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bCancelarActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addContainerGap(514, Short.MAX_VALUE)
.addComponent(bConfirmar)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bCancelar)
.addContainerGap())
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(bCancelar)
.addComponent(bConfirmar))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jPanel3.setBackground(new java.awt.Color(0, 0, 0));
jPanel4.setBackground(new java.awt.Color(0, 0, 0));
jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createMatteBorder(1, 1, 1, 1, new java.awt.Color(255, 255, 255)), "Produtos", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 0, 11), new java.awt.Color(255, 255, 255))); // NOI18N
jPanel4.setAutoscrolls(true);
bProduto.setText("...");
bProduto.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bProdutoActionPerformed(evt);
}
});
tProduto.setEditable(false);
sQuant.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
sQuant.setValue(1);
bMenos.setText("-");
bMenos.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bMenosActionPerformed(evt);
}
});
bMais.setText("+");
bMais.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bMaisActionPerformed(evt);
}
});
jTable1.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"Cod.", "Descrição", "Quant.", "Valor Unit.", "Valor Total"
}
));
jScrollPane1.setViewportView(jTable1);
jTable1.getColumnModel().getColumn(0).setPreferredWidth(50);
jTable1.getColumnModel().getColumn(1).setPreferredWidth(250);
jTable1.getColumnModel().getColumn(2).setPreferredWidth(50);
jTable1.getColumnModel().getColumn(3).setPreferredWidth(70);
jTable1.getColumnModel().getColumn(4).setPreferredWidth(100);
jTotal.setFont(new java.awt.Font("Tahoma", 1, 24));
jTotal.setForeground(new java.awt.Color(255, 255, 255));
jTotal.setText("0,00");
javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
jPanel4.setLayout(jPanel4Layout);
jPanel4Layout.setHorizontalGroup(
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel4Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 634, Short.MAX_VALUE)
.addGroup(jPanel4Layout.createSequentialGroup()
.addComponent(bProduto)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tProduto, javax.swing.GroupLayout.DEFAULT_SIZE, 414, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(sQuant, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bMais)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bMenos))
.addComponent(jTotal, javax.swing.GroupLayout.Alignment.TRAILING))
.addContainerGap())
);
jPanel4Layout.setVerticalGroup(
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel4Layout.createSequentialGroup()
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(bProduto)
.addComponent(tProduto, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(bMenos)
.addComponent(bMais)
.addComponent(sQuant, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 125, Short.MAX_VALUE)
.addGap(18, 18, 18)
.addComponent(jTotal))
);
bCliente.setMnemonic('c');
bCliente.setText("...");
bCliente.setToolTipText("Alt+C");
bCliente.setDisplayedMnemonicIndex(1);
bCliente.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bClienteActionPerformed(evt);
}
});
jLabel2.setBackground(new java.awt.Color(255, 255, 255));
jLabel2.setForeground(new java.awt.Color(255, 255, 255));
jLabel2.setText("Cliente:");
tNome.setEditable(false);
jLabel3.setBackground(new java.awt.Color(255, 255, 255));
jLabel3.setForeground(new java.awt.Color(255, 255, 255));
jLabel3.setText("Data");
jLabel5.setForeground(new java.awt.Color(255, 255, 255));
jLabel5.setText("Km");
jLabel4.setForeground(new java.awt.Color(255, 255, 255));
jLabel4.setText("Veiculo");
tCod.setEditable(false);
tData.setEditable(false);
tData.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.DateFormatter()));
tData.setHorizontalAlignment(javax.swing.JTextField.CENTER);
javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(jPanel3Layout.createSequentialGroup()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel2, javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel3Layout.createSequentialGroup()
.addComponent(bCliente)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tCod, javax.swing.GroupLayout.PREFERRED_SIZE, 58, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tNome, javax.swing.GroupLayout.DEFAULT_SIZE, 443, Short.MAX_VALUE))
.addComponent(jLabel4, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(tVeiculo, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 558, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel3)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(tKm, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel5))
.addComponent(tData, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)))))
.addContainerGap())
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(jLabel3))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(tNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(bCliente)
.addComponent(tCod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(tData, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addComponent(jLabel5)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tKm, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel3Layout.createSequentialGroup()
.addComponent(jLabel4)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tVeiculo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGap(18, 18, 18)
.addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
);
java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
setBounds((screenSize.width-700)/2, (screenSize.height-500)/2, 700, 500);
}// </editor-fold>
private void bCancelarActionPerformed(java.awt.event.ActionEvent evt) {
dispose();
}
private void bConfirmarActionPerformed(java.awt.event.ActionEvent evt) {
String sql = "";
String data = tData.getText();
String km = tKm.getText();
String veiculo = tVeiculo.getText();
String codCli = tCod.getText();
if(data.isEmpty() || km.isEmpty() || veiculo.isEmpty())
{
JOptionPane.showMessageDialog(this, "Campos:\nCliente, Veiculo e Km\nTodos necessários !");
}
else
{
sql = "INSERT INTO troca (tro_data, tro_km, tro_veiculo, cli_cod) VALUES ('#1','#2','#3','#4')";
sql=sql.replace("#1", data);
sql=sql.replace("#2", km);
sql=sql.replace("#3", veiculo);
sql=sql.replace("#4", codCli);
Banco.con.manipular(sql);
//////////////****************///////////////
int ctroca=Banco.con.getMaxPK("troca", "tro_cod");
DefaultTableModel modelo=(DefaultTableModel)jTable1.getModel();
if(modelo.getRowCount()==0)
{
JOptionPane.showMessageDialog(this, "Necessário a inserção de pelo menos um Produto para efetuar esta Venda !");
}
else
{
for(int i=0; i<modelo.getRowCount();i++)
{
String cod=modelo.getValueAt(i,0).toString();
String quant=modelo.getValueAt(i,2).toString();
sql="insert into troca_itens (tro_cod,pro_cod,it_quant) values"
+ "("+String.valueOf(ctroca)+","+cod+","+quant+")";
Banco.con.manipular(sql);
}
//diminuir o estoque
for(int i=0; i<modelo.getRowCount();i++)
{
String cod=modelo.getValueAt(i,0).toString();
String quant=modelo.getValueAt(i,2).toString();
sql = "SELECT pro_estoque FROM produto WHERE pro_cod="+cod;
ResultSet rs = Banco.con.consultar(sql);
int subtraiEstoque = 0;
try
{
if(rs.next())
{
subtraiEstoque = rs.getInt("pro_estoque") - Integer.parseInt(quant);
sql="UPDATE produto SET pro_estoque='#1' WHERE pro_cod="+cod;
sql = sql.replace("#1", String.valueOf(subtraiEstoque));
Banco.con.manipular(sql);
rs.close();
}
}
catch (SQLException ex)
{
JOptionPane.showMessageDialog(this, "Não foi possível dar baixa no estoque !");
}
}
JOptionPane.showMessageDialog(this, "Venda Efetuada com sucesso !");
}
}
}
private void bClienteActionPerformed(java.awt.event.ActionEvent evt) {
TelaConsultaCliente tela=new TelaConsultaCliente(null, true);
tela.setVisible(true);
codigo = tela.getCodigo();
String sql="select cli_nome,cli_endereco,cli_bairro,cli_cidade,cli_uf,cli_fone,cli_informacao from "
+ "cliente where cli_cod="+codigo;
ResultSet rs = Banco.con.consultar(sql);
try
{
if(rs.next())
{
tCod.setText(codigo);
tNome.setText(rs.getString("cli_nome"));
}
rs.close();
}
catch(Exception erro)
{
JOptionPane.showMessageDialog(this, "Erro"+Banco.con.getMensagemErro()+" Veja o codigo "+codigo);
}
habilitarTudo();
//bNovo.setEnabled(false);
//bConfirmar.setEnabled(false);
busca =true;
}
///////////////////////////////////////////////////////////////////////////////////AQUI CHAMA TELA CONSULTA PRODUTO //////////////////////////////
private void bProdutoActionPerformed(java.awt.event.ActionEvent evt) {
TelaConsultaProdutos tela=new TelaConsultaProdutos(null, true);
tela.setVisible(true);
codigo = tela.getCodigo();
String sql="select mar_cod, pro_desc, pro_unidade, pro_estoque, pro_preco "
+ "from produto where pro_cod="+codigo;
ResultSet rs = Banco.con.consultar(sql);
try
{
if(rs.next())
{
tProduto.setText(rs.getString("pro_desc"));
}
rs.close();
}
catch(Exception erro)
{
}
habilitarTudo();
//bConfirmar.setEnabled(false);
busca =true;
}
////////////////////////////////////////////////////////////////////////////////////////////////// TERMINA ///////////////////////////////////////////
private void bMaisActionPerformed(java.awt.event.ActionEvent evt) {
int i=0;
boolean encontrou=false;
String linha[] = new String[5];
String sql="select pro_cod, pro_desc, pro_preco "
+ "from produto where pro_cod="+codigo;
ResultSet rs = Banco.con.consultar(sql);
DefaultTableModel modelo=(DefaultTableModel)jTable1.getModel();
try
{
while(i < modelo.getRowCount() && modelo.getRowCount() > 0)
{
if(modelo.getValueAt(i,1).toString().equals(tProduto.getText()))
{
int op = JOptionPane.showConfirmDialog(this, modelo.getValueAt(i,2).toString()+" unidades deste produto já foi adicionado\n"
+ "Deseja atualizar a quant atual por "+sQuant.getValue().toString()+" unid");
if(op==JOptionPane.YES_OPTION)
{
if(rs.next())
{
//Nesta linha retiro o R$ pois vem do BD
String retira = rs.getString(3).substring(2);
//Retiro os pontos pois com valores 22.222,00 temos de fazer este tratamento Double é assim 22222.00
retira = retira.replace(".", "");
//Apos tirar o ponto tenho de tirar a virgula e colocar o ponto o valor ira fica compativel com Double
retira = retira.replace(",", ".");
//Pego o valor do Produto e Quantidade antiga multiplico
double multiplicaValorAntigo = Double.parseDouble(retira) * Double.parseDouble(modelo.getValueAt(i,2).toString());
//Apos a multiplicação subtraiu pela soma que é o valor total
soma = soma - multiplicaValorAntigo;
//Insiro a nova quantidade na lista
modelo.setValueAt(sQuant.getValue().toString(), i, 2);
//Multiplico a nova quantidade pelo valor unitários do Produto
double multiplica = Double.parseDouble(retira)*Double.parseDouble(sQuant.getValue().toString());
//Insiro o novo valor ja multiplicado do Produto
modelo.setValueAt(String.format("R$ %.2f", multiplica), i, 4);
//Atualizo o novo valor total com a nova multiplicação
soma = soma + multiplica;
//jTotal que é um jLabel recebe o valor atualizado
jTotal.setText(String.format("R$ %.2f", soma));
}
}
//Esta variavel é responsavel em não permitir a inserção do produto ja existente na jTabel modelo :linha 577
encontrou = true;
}
i++;
}
if(rs.next() && encontrou == false)
{
linha[0]=rs.getString(1);
linha[1]=rs.getString(2);
linha[2]=sQuant.getValue().toString();
linha[3]=rs.getString(3);
String retira = rs.getString(3).substring(2);
retira = retira.replace(".", "");
retira = retira.replace(",", ".");
double multiplica = Double.parseDouble(retira)*Double.parseDouble(sQuant.getValue().toString());
linha[4] = String.format("R$ %.2f", multiplica);
modelo.addRow(linha);
soma = soma + multiplica;
jTotal.setText(String.format("R$ %.2f", soma));
}
}
catch (SQLException ex)
{
Logger.getLogger(TelaTrocaOleo.class.getName()).log(Level.SEVERE, null, ex);
}
}
private void bMenosActionPerformed(java.awt.event.ActionEvent evt) {
DefaultTableModel modelo=(DefaultTableModel)jTable1.getModel();
int index = jTable1.getSelectedRow();
String pro_cod = jTable1.getValueAt(index ,4).toString();
pro_cod = pro_cod.substring(2);
pro_cod = pro_cod.replace(",", ".");
double subtrai = soma - Double.parseDouble(pro_cod);
soma = subtrai;
jTotal.setText(String.format("R$ %.2f", soma));
modelo.removeRow(jTable1.getSelectedRow());
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(TelaTrocaOleo.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(TelaTrocaOleo.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(TelaTrocaOleo.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(TelaTrocaOleo.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/* Create and display the dialog */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
TelaTrocaOleo dialog = new TelaTrocaOleo(new javax.swing.JFrame(), true);
dialog.addWindowListener(new java.awt.event.WindowAdapter() {
@Override
public void windowClosing(java.awt.event.WindowEvent e) {
System.exit(0);
}
});
dialog.setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton bCancelar;
private javax.swing.JButton bCliente;
private javax.swing.JButton bConfirmar;
private javax.swing.JButton bMais;
private javax.swing.JButton bMenos;
private javax.swing.JButton bProduto;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel4;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
private javax.swing.JLabel jTotal;
private javax.swing.JSpinner sQuant;
private javax.swing.JTextField tCod;
private javax.swing.JFormattedTextField tData;
private javax.swing.JTextField tKm;
private javax.swing.JTextField tNome;
private javax.swing.JTextField tProduto;
private javax.swing.JTextField tVeiculo;
// End of variables declaration
}
Muito codigo