IF + Equals

3 respostas
K

Boa tarde a todos, estou tentando construir um controle de caixa mas estou tendo um erro ao manter ele fechado.

O caso e o seguinte, eu abro o programa, chamo a tela de controle de caixa fechada a principio, inicio o caixa com o valor, fecho a tela de controle de caixa normalmente(pelo ‘X’ la em cima da janela), trabalho normalmente com o programa, se necessario abro novamente a tela de controle de caixa faco alteracoes e salvo normalmente. Ate aqui tudo bem. No entanto se eu fechar o caixa sem fechar o programa e chamar novamente a tela de controle de caixa ela e chama como se estivesse aberto ainda… Eu quero corrigir isso…

a condicao que verifica o caixa E esta

(        if((Principal.controledeCaixa == null) || (lblSituacao.equals(FECHADO))){

//verificoes do codigo

} else {

//faz outra verificacao caso a condicao acima naum esteja sendo atendida

}

)

Pra primeira vez que abro o caixa ta excelente, tudo muito bonitinho, mas a partir dai se eu quiser abrir novamente o caixa :frowning:

O netbeans ta me informando esse erro tbm

.equals() em tipos incompativeis

Por isso sei que e com equals o erro…

3 Respostas

T
... lblSituacao.getText().equals ("FECHADO") ...
K

Obrigado... respondeu perfeitamente... mas ainda naum consegui fazer o que precisava... e aproveitando que ja abri o topico pra isso mesmo... entaum...

Bom... continua ocorrendo a mesma coisa... eu consigo abrir o caixa mas naum consigo mante-lo fechado... vou postar minha classe publica que esta fazendo toda essa verificacao... tem como vc me ajudar a achar o problema?

public class ControledeCaixa extends javax.swing.JFrame {
    Principal login;
    String aux;
        
    @SuppressWarnings("empty-statement")
    public ControledeCaixa(Principal x) {
        login = x;
        initComponents();
        btnFechar.setEnabled(false);

        try{
            IniciarSistema.rs = IniciarSistema.comando.executeQuery
            ("select * from controledecaixa where situacao2Controle ='FECHADO'");
            while (IniciarSistema.rs.next()) {
                lblTeste.setText("0");
                lblSituacao.setText(IniciarSistema.rs.getString("situacao2Controle"));
                lblFechamento.setText(IniciarSistema.rs.getString("fechamentoControle"));
            }
        }catch(SQLException e) {
                JOptionPane.showMessageDialog(this,"Erro 1 de SQL = " +e);
            }
        if((Principal.controledeCaixa == null) & (lblSituacao.getText().equals("FECHADO"))){
            //http://www.guj.com.br/posts/list/0/128120.java#691055
                lblTeste.setText("1");
            try{
            IniciarSistema.rs = IniciarSistema.comando.executeQuery
                    ("select * from controledecaixa where situacao2Controle ='FECHADO'");
                while (IniciarSistema.rs.next()) {
                    lblTeste.setText("2");
                    lblSituacao.setText("FECHADO");
                    lblFechamento.setText(IniciarSistema.rs.getString("fechamentoControle"));
                   }
            }catch(SQLException e) {
                JOptionPane.showMessageDialog(this,"Erro 2 de SQL = " +e);
            }
        }else {
            lblSituacao.setText("ABERTO");
            lblTeste.setText("4");
        try{
            IniciarSistema.rs = IniciarSistema.comando.executeQuery
                    ("select * from controledecaixa where situacaoControle = 'ABERTO'");
            while (IniciarSistema.rs.next()) {
                lblTeste.setText("5");
                lblAbertura.setText(IniciarSistema.rs.getString("aberturaControle"));
                lblSaldoabertura.setText(IniciarSistema.rs.getString("saldoaberturaControle"));
                }
            lblFechamento.setText("");
            btnAbrir.setEnabled(false);
            btnFechar.setEnabled(true);
         }catch(SQLException e) {
                JOptionPane.showMessageDialog(this,"Erro 3 de SQL = " +e);
            }
        }

        
    }
K

Pessoal, obrigado consegui ajuda pra resolver... enfim... eu tive de criar uma variavel de controle na classe principal e alterar tbm em outras partes do codigo... ficando assim a resolucao....

(tem de criar uma variavel controlelbl na classe principal como static)

import java.sql.*;
import javax.swing.*;

public class ControledeCaixa extends javax.swing.JFrame {
    Principal login;
    String aux="0";
        
    @SuppressWarnings("empty-statement")

    public ControledeCaixa(Principal x) {
        login = x;
        initComponents();
        btnFechar.setEnabled(false);
        

        try{
            IniciarSistema.rs = IniciarSistema.comando.executeQuery
            ("select * from controledecaixa where situacao2Controle ='FECHADO'");
            while (IniciarSistema.rs.next()) {
                lblTeste.setText("0");
                lblSituacao.setText(IniciarSistema.rs.getString("situacao2Controle"));
                lblFechamento.setText(IniciarSistema.rs.getString("fechamentoControle"));
            }
        }catch(SQLException e) {
                JOptionPane.showMessageDialog(this,"Erro 1 de SQL = " +e);
            }
        if((Principal.controlelbl.equals("FECHADO"))&&(Principal.controledeCaixa == null) && (lblSituacao.getText().equals("FECHADO"))){//http://www.guj.com.br/posts/list/0/128120.java#691055
                lblTeste.setText("1");
            try{
            IniciarSistema.rs = IniciarSistema.comando.executeQuery
                    ("select * from controledecaixa where situacao2Controle ='FECHADO'");
                while (IniciarSistema.rs.next()) {
                    lblTeste.setText("2");
                    lblSituacao.setText("FECHADO");
                    lblFechamento.setText(IniciarSistema.rs.getString("fechamentoControle"));
                   }
              }catch(SQLException e) {
                JOptionPane.showMessageDialog(this,"Erro 2 de SQL = " +e);
            }
        }else if (Principal.controlelbl.equals("ABERTO")){
            lblSituacao.setText("ABERTO");
            lblTeste.setText("4");
        try{
            IniciarSistema.rs = IniciarSistema.comando.executeQuery
                    ("select * from controledecaixa where situacaoControle = 'ABERTO'");
            while (IniciarSistema.rs.next()) {
                lblTeste.setText("5");
                lblAbertura.setText(IniciarSistema.rs.getString("aberturaControle"));
                lblSaldoabertura.setText(IniciarSistema.rs.getString("saldoaberturaControle"));
                }
            lblFechamento.setText("");
            btnAbrir.setEnabled(false);
            btnFechar.setEnabled(true);
         }catch(SQLException e) {
                JOptionPane.showMessageDialog(this,"Erro 3 de SQL = " +e);
            }
        }

        
    }

    
    @SuppressWarnings("unchecked")
                      

    private void btnAbrirActionPerformed(java.awt.event.ActionEvent evt) {                                         
        int a;
        String saldo;
        int a1=0, a2=0;
        try{
        a = JOptionPane.showConfirmDialog(this, "Deseja Abrir Caixa?");
        if(a==0){
            lblTeste.setText("786983");
       /*------------------------Abertura do Caixa e Salvamento dos movimentos atuais----------------------------------*/
        IniciarSistema.rs = IniciarSistema.comando.executeQuery
                ("select * from controledecaixa where situacaoControle = 'ABERTO'");
        if(IniciarSistema.rs.next()) {
            lblTeste.setText("6");
            lblSituacao.setText("ABERTO");
            Principal.controlelbl="ABERTO";
            lblAbertura.setText(new java.text.SimpleDateFormat("dd/MM/yyyy - HH:mm:ss").format(new java.util.Date()));
            lblSaldoabertura.setText(IniciarSistema.rs.getString("saldoaberturaControle"));
            lblFechamento.setText("");
            saldo = JOptionPane.showInputDialog("Digite o valor: ");
            a1 = Integer.parseInt(saldo);
            lblSaldoabertura.setText("R$ "+a1);
          IniciarSistema.comando.executeUpdate("insert into controledecaixa (situacaoControle, saldoaberturaControle, aberturaControle, fechamentoControle, entradaControle, " +
                "saidaControle, saldoControle) " +
                "values ('" + lblSituacao.getText() + "', '" + lblSaldoabertura.getText() + "','" + lblAbertura.getText() + "', '" + lblFechamento.getText() + "', " +
                " '" + lblEntrada.getText() +"', '"+  lblSaida.getText() +"', '"+  lblSaldo.getText() +"' )");
          /*------------------------Atualização do Entrada, Saida e Saldo----------------------------------------------
          try{
              lblTeste.setText("6.1");
             IniciarSistema.rs = IniciarSistema.comando.executeQuery
                    ("select * from controledecaixa where situacaoControle = 'ABERTO'");
                while (IniciarSistema.rs.next()) {
                    lblTeste.setText("6.2");
                    lblEntrada.setText(IniciarSistema.rs.getString("entradaControle"));
                    lblTeste.setText("6.3");
                     aux = lblEntrada.getText();
                     lblTeste.setText("6.4");//O codigo da um erro nesta parte aqui...
                     a1 = Integer.parseInt(aux);
                     lblTeste.setText("6.5");
                     a2 = a2 + a1;
                     lblTeste.setText("6.6");
                   }
             lblEntrada.setText("R$ "+a2);
        }catch(SQLException e) {
                 JOptionPane.showMessageDialog(this,"Erro 1 de SQL = " +e);
            }
          /*------------------------Configuração dos Botões(Abrir e Fechar)--------------------------------------------*/
          lblTeste.setText("7");
          btnAbrir.setEnabled(false);
          btnFechar.setEnabled(true);
        } else lblSituacao.setText("FECHADO");
         
        }
        }catch(SQLException e) {
        JOptionPane.showMessageDialog(this,"Erro 4 de SQL = " +e);
    }
}                                        

    private void btnFecharActionPerformed(java.awt.event.ActionEvent evt) {                                          
        int a;
        try{
        a = JOptionPane.showConfirmDialog(this, "Deseja Fechar Caixa?");
        if(a==0){
/*------------------------Fechamento do Caixa e Salvamento dos movimentos atuais----------------------------------*/
        IniciarSistema.rs = IniciarSistema.comando.executeQuery
                ("select * from controledecaixa");
        if(IniciarSistema.rs.next()) {
            lblTeste.setText("8");
            lblSituacao.setText("FECHADO");
            Principal.controlelbl="FECHADO";
            lblFechamento.setText(new java.text.SimpleDateFormat("dd/MM/yyyy - HH:mm:ss").format(new java.util.Date()));
            lblAbertura.setText("");
            lblSaldoabertura.setText("");
          IniciarSistema.comando.executeUpdate("insert into controledecaixa (situacao2Controle, saldoaberturaControle, aberturaControle, fechamentoControle, entradaControle, " +
                "saidaControle, saldoControle) " +
                "values ('" + lblSituacao.getText() + "', '" + lblSaldoabertura.getText() + "','" + lblAbertura.getText() + "', '" + lblFechamento.getText() + "', " +
                " '" + lblEntrada.getText() +"', '"+  lblSaida.getText() +"', '"+  lblSaldo.getText() +"' )");

/*------------------------Configuração dos Botões(Abrir e Fechar)--------------------------------------------*/
          btnFechar.setEnabled(false);
          btnAbrir.setEnabled(true);
        } else {
            lblTeste.setText("9");
            lblSituacao.setText("ABERTO");
            lblSaldoabertura.setText(IniciarSistema.rs.getString("saldoaberturaControle"));        
        }

        }
        }catch(SQLException e) {
        JOptionPane.showMessageDialog(this,"Erro 5 de SQL = " +e);
    }

}                                         

    private void btnSalvarActionPerformed(java.awt.event.ActionEvent evt) {                                          
    try{
        IniciarSistema.comando.executeUpdate("insert into controledecaixa (situacaoControle, situacao2Controle, saldoaberturaControle, aberturaControle, fechamentoControle, entradaControle, " +
                "saidaControle, saldoControle) " +
                "values ('" + lblSituacao.getText() + "', '" + lblSituacao.getText() + "', '" + lblSaldoabertura.getText() + "','" + lblAbertura.getText() + "', '" + lblFechamento.getText() + "', " +
                " '" + lblEntrada.getText() +"', '"+  lblSaida.getText() +"', '"+  lblSaldo.getText() +"' )");
        lblTeste.setText("10");
    } catch(SQLException e){
        JOptionPane.showMessageDialog(this,"Erro 6 de SQL = " +e);
    }
}                                         

   
}

Se quiserem apagar o topico podem ficar a vontade... mas fica ai pra quem tiver duvida tbm...

Criado 28 de maio de 2009
Ultima resposta 29 de mai. de 2009
Respostas 3
Participantes 2