Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: Yandrako en 16 Diciembre 2013, 01:24 am



Título: Duda Java
Publicado por: Yandrako en 16 Diciembre 2013, 01:24 am
Resulta que quiero hacer un pequeño programa en Java en el que hay una pregunta, si se responde bien en un espacio de texto, quiero que en otro espacio de texto ponga Bien o algo parecido, y que si se responde mal, ponga Mal, ¿cómo puedo hacerlo?
Me he liado bastante porque soy nuevo en esto de la programación:
Poniendo que donde se responda la pregunta es "Text1", donde debería aparecer el texto de Bien o Mal es "Text2" y la respuesta es 10, ¿cómo lo tengo que hacer?


Título: Re: Duda Java
Publicado por: xaps en 16 Diciembre 2013, 03:05 am
Creo entender que estás hablando de cuadros de texto, es decir, interfaz gráfica. Te recomiendo que antes de ponerte a hacer programas con interfaz gráfica te dediques a estudiar el lenguaje y realizar pruebas mediante consola, y cuando ésto ya lo tengas dominado ya podrías pasar a desarrollar programas con interfaz gráfica.

Por cierto, este tema debería ir en el subforo de Java. Tenlo en cuenta para la próxima vez.

Saludos.


Título: Re: Duda Java
Publicado por: Mitsu en 20 Diciembre 2013, 17:55 pm
Deberías empezar por leer el Swing tutorial (http://docs.oracle.com/javase/tutorial/uiswing/) de Oracle. Es como querer multiplicar sin saber sumar.

Debes leer también, sobre los estándares para hacer una GUI funcional, por ejemplo, casi nunca se muestra un resultado en un JTextField, y si lo haces debe de estar deshabilitado. Un JTextField es para ingreso de datos generalmente, y un JLabel para mostrar texto.

De todos modos, lo que tú deseas es demasiado sencillo:

Código
  1. String respuesta = gui.txtRespuesta.getText(); // obtiene lo ingresado en el JTextField
  2. String respuestaCorrecta = "La respuesta correcta";
  3. String mensajeAMostrar;
  4.  
  5.  /**
  6.    * @compareToIgnoreCase : compara Strings sin tener en cuenta minisculas/mayusculas
  7.    */
  8.  
  9.  if (respuesta.compareToIgnoreCase(respuestaCorrecta)) {
  10.     mensajeAMostrar = "Respuesta correcta.";
  11.  }
  12.  else {
  13.     mensajeAMostrR = "Respuesta incorrecta";
  14.  }
  15.  
  16.   gui.txtElOtroJTextField.setText(mensajeAMostrar);
  17.