galera ja faz alguns dias que estou tentando mas nao consigo, eu tenho textField onde eu digito um valor, ai quando eu aperta Tab ou sair do textfield eu quero que o sistema execute uma conta pra mostra num label, so que nao consegui achar nenhum evento ? eu fiz com o FOCULOST so q ele nao funciona todas as vezes.
coloca todo o procedimento interno do evento dentro de um try/catch, captura a exceção e posta ae.
eu quero tipo quando ele perde o foco ele executa esse metodo
// evento FOCUSLOST
private void txt_finalizaraddporcentagemFocusLost(java.awt.event.FocusEvent evt) {
efetuarCalculosFinais();// TODO add your handling code here:
}
//Execuçao do metodo
private void efetuarCalculosFinais() {
float total = Float.parseFloat(txt_finalizarTotalbruto.getText());
if (!txt_finalizaraddreias.getText().equals("") && !txt_finalizaraddreias.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizaraddreias.getText());
total = total + temp;
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizaraddporcentagem.getText().equals("") && !txt_finalizaraddporcentagem.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizaraddporcentagem.getText());
total = total + ((total*temp)/100);
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizardescreais.getText().equals("") && !txt_finalizardescreais.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizardescreais.getText());
total = total - temp;
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizardescporcentagem.getText().equals("") && !txt_finalizardescporcentagem.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizardescporcentagem.getText());
total = total - ((total*temp)/100);
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizarfretereais.getText().equals("") && !txt_finalizarfretereais.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizarfretereais.getText());
total = total + temp;
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizarfrenteporcentagem.getText().equals("") && !txt_finalizarfrenteporcentagem.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizarfrenteporcentagem.getText());
total = total + ((total*temp)/100);
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizaraddreias.getText().equals("") && !txt_finalizaraddporcentagem.getText().equals("") &&
!txt_finalizardescreais.getText().equals("") && !txt_finalizardescporcentagem.getText().equals("") &&
!txt_finalizarfretereais.getText().equals("") && !txt_finalizarfretereais.getText().equals("") &&
!txt_finalizarfrenteporcentagem.getText().equals("")){
txt_finalizarTotalliquido.setText(txt_finalizarTotalbruto.getText());
}
}
Utilize as tags CODE no editor aki do forum. Coloca como tá abaixo e responde a exceção…
//Execuçao do metodo
private void efetuarCalculosFinais() {
try{
float total = Float.parseFloat(txt_finalizarTotalbruto.getText());
if (!txt_finalizaraddreias.getText().equals("") && !txt_finalizaraddreias.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizaraddreias.getText());
total = total + temp;
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizaraddporcentagem.getText().equals("") && !txt_finalizaraddporcentagem.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizaraddporcentagem.getText());
total = total + ((total*temp)/100);
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizardescreais.getText().equals("") && !txt_finalizardescreais.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizardescreais.getText());
total = total - temp;
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizardescporcentagem.getText().equals("") && !txt_finalizardescporcentagem.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizardescporcentagem.getText());
total = total - ((total*temp)/100);
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizarfretereais.getText().equals("") && !txt_finalizarfretereais.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizarfretereais.getText());
total = total + temp;
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizarfrenteporcentagem.getText().equals("") && !txt_finalizarfrenteporcentagem.getText().equals("0")){
float temp = Float.parseFloat(txt_finalizarfrenteporcentagem.getText());
total = total + ((total*temp)/100);
txt_finalizarTotalliquido.setText(String.valueOf(total));
}
if (!txt_finalizaraddreias.getText().equals("") && !txt_finalizaraddporcentagem.getText().equals("") &&
!txt_finalizardescreais.getText().equals("") && !txt_finalizardescporcentagem.getText().equals("") &&
!txt_finalizarfretereais.getText().equals("") && !txt_finalizarfretereais.getText().equals("") &&
!txt_finalizarfrenteporcentagem.getText().equals("")){
txt_finalizarTotalliquido.setText(txt_finalizarTotalbruto.getText());
}
}catch(Exception e){
e.printStackTrace();
}
}
eu fiz o q vc disse mas nao quer dar certo msm assim… ele nao da erro e executa normalmente
agora sim… o try catch mostro o erro mas nao entendi (“java.lang.numberformatexception: empty String”)
agora sim consegui… valeu d+ zerokelvin pela força. t+ obrigado