elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  [Java] Error con actionPerformed
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Java] Error con actionPerformed  (Leído 3,893 veces)
Lain0x

Desconectado Desconectado

Mensajes: 72


Ver Perfil
[Java] Error con actionPerformed
« en: 3 Diciembre 2010, 16:22 pm »

Hola, estoy haciendo un programa en Java en que una clase gráfica llama a una clase operaciones por medio de un objeto. El problema es que no se ejecuta correctamente, la verdad no hace nada.

Clase gráfica (No está completa obviamente, sólo la parte en que se origina el error)
La idea en ésta parte es que al presionar un botón se ingrese una cierta cantidad predeterminada, ésta cantidad es un String. El objeto p está declarado antes correctamente.

Código:
private void b1ActionPerformed(java.awt.event.ActionEvent evt) {                                   
        if(evt.getSource()==b1)
            new Operacion();
        {   String n="";
            n = "10000";

            t.setText(p.diezmil(n)+"");
        }
    }   



Clase Operación
El método de ésta clase recibe al String, lo convierte a entero, aplica la fórmula y retorna un número.

Código:
public class Operacion {

    public int diezmil(String valor)
    {
        valor ="";
        int a = Integer.parseInt(valor);
        int bi10;
        bi10 = a/10000;
        a = a%10000;

        return(bi10);
    }
}

Espero puedan ayudarme, gracias.


En línea

Dnk!

Desconectado Desconectado

Mensajes: 38



Ver Perfil WWW
Re: [Java] Error con actionPerformed
« Respuesta #1 en: 3 Diciembre 2010, 17:41 pm »

Citar
private void b1ActionPerformed(java.awt.event.ActionEvent evt) {   

Hay ya estas concretando en que el componete b1 ha entrado en el evento ActionPerformed(). Por lo que :
Citar
if(evt.getSource()==b1)
es inecesario. Prueba con esto:

Código
  1. private void b1ActionPerformed(java.awt.event.ActionEvent evt) {                                  
  2.            new Operacion();
  3.            String n="";
  4.            n = "10000";
  5.  
  6.            t.setText(p.diezmil(n)+"");
  7.    }
  8.  

Creo que hay esta el fallo, prueba y me dices.


En línea




Comentar es agradecer.
Visita Mi Blob
Lain0x

Desconectado Desconectado

Mensajes: 72


Ver Perfil
Re: [Java] Error con actionPerformed
« Respuesta #2 en: 3 Diciembre 2010, 21:53 pm »

Me arroja esto:

Código:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at NuevoCajero.b1ActionPerformed(NuevoCajero.java:152)
        at NuevoCajero.access$000(NuevoCajero.java:16)
        at NuevoCajero$1.actionPerformed(NuevoCajero.java:53)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.Component.processMouseEvent(Component.java:5517)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
        at java.awt.Component.processEvent(Component.java:5282)
        at java.awt.Container.processEvent(Container.java:1966)
        at java.awt.Component.dispatchEventImpl(Component.java:3984)
        at java.awt.Container.dispatchEventImpl(Container.java:2024)
        at java.awt.Component.dispatchEvent(Component.java:3819)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
        at java.awt.Container.dispatchEventImpl(Container.java:2010)
        at java.awt.Window.dispatchEventImpl(Window.java:1791)
        at java.awt.Component.dispatchEvent(Component.java:3819)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
En línea

1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: [Java] Error con actionPerformed
« Respuesta #3 en: 4 Diciembre 2010, 07:09 am »

Hola que tal

Código:
private void b1ActionPerformed(java.awt.event.ActionEvent evt) {                                   
        if(evt.getSource()==b1)
            new Operacion();
        {   String n="";
            n = "10000";

            t.setText(p.diezmil(n)+"");
        }
    }   

D:
No hace falta
Código
  1. if(evt.getSource()==b1)

Código
  1. new Operacion();
:huh:


Código
  1. String n="";
  2. n = "10000";

Igual a:

Código
  1. String n="10000";


Código
  1. p.diezmil(n)+""
Por curiosidad como declaras tu objeto p??

Código
  1. +""
Lo mas correcto es usar el método String.valueOf();

Intenta con:

Código
  1. private void b1ActionPerformed(java.awt.event.ActionEvent evt) {                                  
  2.            String n = "10000";
  3.            t.setText(String.valueOf(new Operacion().diezmil(n)));
  4.        }
  5. }  

o con:

Código
  1. private void b1ActionPerformed(java.awt.event.ActionEvent evt) {                                  
  2.            String n = "10000";
  3.            Operacion p = new Operacion();
  4.            t.setText(String.valueOf(p.diezmil(n)));
  5.        }
  6. }  


Ahora en esta parte:

Código:
public class Operacion {

    public int diezmil(String valor)
    {
        valor ="";
        int a = Integer.parseInt(valor);
        int bi10;
        bi10 = a/10000;
        a = a%10000;

        return(bi10);
    }
}

Código
  1. valor ="";
WTH :huh:

Para que le cambias el valor si vas a hacer el parse a int?, es como si hicieras

Código
  1. int a = Integer.parseInt("");

Y al intentar hacerlo te causa una error.

Intenta con:

Código
  1. public int diezmil(String valor) {
  2.        int a = Integer.parseInt(valor);
  3.        int bi10 = a/10000;
  4.        a = a%10000;
  5.        return bi10;
  6.    }

Saludos.
« Última modificación: 4 Diciembre 2010, 07:17 am por Darhius » En línea

abc
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Error al Compilar en Java
Java
NaNo N´RoSeS 5 4,064 Último mensaje 8 Junio 2005, 11:28 am
por pepel
error java en mobil
Java
dionys 1 2,256 Último mensaje 19 Diciembre 2007, 17:06 pm
por egyware
Error en Java
Java
Blitzkrieg' 8 6,904 Último mensaje 10 Septiembre 2009, 04:10 am
por Blitzkrieg'
Boton como switch en java. actionPerformed no FUNKA
Java
rub'n 2 2,725 Último mensaje 27 Septiembre 2015, 17:55 pm
por rub'n
tengo problemas con el ActionPerformed
Dudas Generales
yolog 0 1,645 Último mensaje 30 Marzo 2020, 20:20 pm
por yolog
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines