Foros del Web » Programación para mayores de 30 ;) » Java »

aplicacion

Estas en el tema de aplicacion en el foro de Java en Foros del Web. Buenas tardes muchachos: tengo este applet pero no me suma las cantidades que le digo al programa sacandome siempre la suma 0.0. Quien me pueda ...
  #1 (permalink)  
Antiguo 04/03/2009, 10:46
Avatar de diegofernando  
Fecha de Ingreso: marzo-2009
Mensajes: 71
Antigüedad: 15 años, 1 mes
Puntos: 0
aplicacion

Buenas tardes muchachos:
tengo este applet pero no me suma las cantidades que le digo al programa sacandome siempre la suma 0.0.
Quien me pueda ayudar se lo agradecere infinitamente.

El applet es el siguiente:


import java.awt.*;
import java.awt.event.*;
import java.applet.*;

//public class Appletdiego extends Applet

public class Appletdiego extends Applet implements ActionListener
{
Label lb1,lb2,lb3,lb4,lb5,lb6;
TextField input1,input2,input3,input4,input5,input6,outext;
Button display_button;
int A,B,C,D;


double total;
//public void init()
public Appletdiego ()

{
lb1=new Label ("vendedor : ");


input1 = new TextField(10);
lb2=new Label ("articulos :");
input2= new TextField(10);
lb3=new Label ("cantidad articuloA:");
input3= new TextField(10);
lb4=new Label ("cantidad articuloB:");
input4= new TextField(10);
lb5=new Label ("cantidad articuloC:");
input5= new TextField(10);
lb6=new Label ("cantidad articuloD");
input6= new TextField(10);
display_button = new Button("calcula");

outext = new TextField(20);
add (lb1);
add(input1);
add (lb2);
add (input2);
add (lb3);
add (input3);
add (lb4);
add (input4);
add (lb5);
add (input5);
add (lb6);
add (input6);
add (display_button);
add (display_button);
add(outext);


display_button.addActionListener(this);

}

//public boolean action(Event event, Object o)
public void actionPerformed(ActionEvent ae)
{
if (ae.getSource() == display_button) {
int A = Double.parseDouble(input3.getText());
int B = Integer.parseInt(input4.getText());
int C = Integer.parseInt(input5.getText());
int D = Integer.parseInt(input6.getText());
//double total=0.0;
}

total=A+B;
//200+((cA*239.9)+(cB*129.75)+(cC*99.95)+(cD*350.89) )*9/100;

outext.setText("" +total);
}

}


gracias.
  #2 (permalink)  
Antiguo 04/03/2009, 12:02
Avatar de drac94  
Fecha de Ingreso: mayo-2008
Ubicación: México
Mensajes: 383
Antigüedad: 15 años, 11 meses
Puntos: 5
Respuesta: aplicacion

Hola diegofernando, ya revise tu codigo y hay 2 cosas q me parecen extrañas, mas no se si resuelvan tu problema:
La primera es que intentas guardar una dato de tipo double en una variable de tipo string
Código PHP:
int A Double.parseDouble(input3.getText()); 
y la segunda es q el setText solo acepta string y tu le mandas un double
Código PHP:
outext.setText("" +total); 
deberia ser
Código PHP:
outext.setText("" +total.toString()); 
checa esas 2 cosas y si todavia sigues con el problema, vuelves a preguntar y vuelvo a checar el codigo, bye
  #3 (permalink)  
Antiguo 04/03/2009, 15:50
Avatar de diegofernando  
Fecha de Ingreso: marzo-2009
Mensajes: 71
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: aplicacion-hola drac94

gracias drac por tu respuesta.Compilo cambiando el programa por estas dos lineas que me dices:

int A = Integer.parseInt(input3.getText());
outext.setText("" +total.toString());

y me genera el siguiente error:
Appletdiego.java:73: int cannot be dereferenced

bueno en lo ke me puedas colaborar
gracias.
  #4 (permalink)  
Antiguo 05/03/2009, 08:17
Avatar de drac94  
Fecha de Ingreso: mayo-2008
Ubicación: México
Mensajes: 383
Antigüedad: 15 años, 11 meses
Puntos: 5
Respuesta: aplicacion

es por que la variable total es de tipo int, que es un tipo primitivo y no tiene un metodo toString(), lo siento fue mi error, cambialo por esto y ya debe de funcionar
Código PHP:
String.valueOf(total); 
  #5 (permalink)  
Antiguo 05/03/2009, 14:24
Avatar de diegofernando  
Fecha de Ingreso: marzo-2009
Mensajes: 71
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: aplicacion

Hola drac94 ,ya inserte la instruccion que me dijiste ("" +String.valueOf(total));
pero al ejecutar el programa e insertar las cantidades de un solo articulo en cada caja de texto me genera la respuesta 0.0 en total ¿porke?
si quieres corre el applet para que lo entiendas mejor.
El applet tiene que hacer toda la funcion correspondiente y mandarla a total y asi sacarla en la caja de texto final accionada por el boton calcula.
ayudame



import java.awt.*;
import java.awt.event.*;
import java.applet.*;

//public class Appletdiego extends Applet

public class Appletdiego extends Applet implements ActionListener
{
Label lb1,lb2,lb3,lb4,lb5,lb6;
TextField input1,input2,input3,input4,input5,input6,outext;
Button display_button;
int cA,cB,cC,cD;


double total;
public Appletdiego ()

{
lb1=new Label ("vendedor : ");


input1 = new TextField(10);
lb2=new Label ("articulos :");
input2= new TextField(10);
lb3=new Label ("cantidad articuloA:");
input3= new TextField(10);
lb4=new Label ("cantidad articuloB:");
input4= new TextField(10);
lb5=new Label ("cantidad articuloC:");
input5= new TextField(10);
lb6=new Label ("cantidad articuloD");
input6= new TextField(10);
display_button = new Button("calcula");

outext = new TextField(20);
add (lb1);
add(input1);
add (lb2);
add (input2);
add (lb3);
add (input3);
add (lb4);
add (input4);
add (lb5);
add (input5);
add (lb6);
add (input6);
add (display_button);
add(outext);


display_button.addActionListener(this);

}


public void actionPerformed(ActionEvent ae)
{
if (ae.getSource()==display_button) {
int cA = Integer.parseInt(input3.getText());
int cB = Integer.parseInt(input4.getText());
int cC = Integer.parseInt(input5.getText());
int cD = Integer.parseInt(input6.getText());


}

total=200+((cA*239.9)+(cB*129.75)+(cC*99.95)+(cD*3 50.89))*9/100;

outext.setText("" +String.valueOf(total));
}

}
  #6 (permalink)  
Antiguo 05/03/2009, 14:34
Avatar de drac94  
Fecha de Ingreso: mayo-2008
Ubicación: México
Mensajes: 383
Antigüedad: 15 años, 11 meses
Puntos: 5
Respuesta: aplicacion

tendras que esperar a que llegue a mi casa ya q ue aqui no tengo donde probarlo, para mi desgracia en mi trabajo programo con .NET, pero dejame checarlo y en la tarde te doy una respuesta, vale

Aqui no se si lo copiaste mal o asi lo tienes
Código PHP:
cD*3 50.89 
te sobra un espacio entre el 3 y el 5
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:26.