Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Trickman

#1
Java / Re: Árbol multirrama en Java. ¿Estándar?
7 Noviembre 2009, 16:42 PM
Cita de: L-EYER en  6 Noviembre 2009, 01:10 AM
mm no he visto uno como tal pero deberrias crearte uno propio ya que si estas buscando uno ya deberias tener algunos conocimientos.


Saludos.
Bueno, hombre, crearme uno propio tiene que ser el último recurso. Ten en cuenta de que no sería solo implementarlo: Tendría que hacer mil pruebas unitarias y exhaustivas, y no quiero perder una tarde para hacer una estructura de datos auxiliar.

¿Alguien sabe dónde puedo encontrar alguna biblioteca que me ayude en esto? Gracias.
#2
Java / Re: solo numeros en java
6 Noviembre 2009, 01:04 AM
Veamos, supongo que quieres que te controle los caracteres sobre la marcha, ¿no? O sea, que diréctamente solo te deje escribir números o que te cambie diréctamente a mayúsculas cada letra.

Para el primer problema (siempre y cuando por "numérico" te refieres a "entero" y no a flotante o a double, puesto que ahí deberías controlar otros caracteres además de los dígitos):



public void compruebaPulsacionEntero(java.awt.event.KeyEvent e) {
   char teclaPulsada = e.getKeyChar(); // Recogemos, a partir del evento, la tecla que se pulsó

   if (!Character.isDigit(teclaPulsada)) { // Si la tecla pulsada no es un dígito, entonces...
       e.consume(); // Borramos la última letra introducida (lo hace muy rápido, la
                           // letra nunca se escribe en el textfield)
   }
}



Para el segundo problema, es casi lo mismo, pero cambiando alguna cosilla:



public void convierteMayusculas(java.awt.event.KeyEvent e) {
   char teclaPulsada = e.getKeyChar(); // Recogemos, a partir del evento, la tecla que se pulsó

   Character.toUpperCase (teclaPulsada); // La convertimos a mayúsculas
   
}



Y, para que reaccione el textField a estos cambios, lo que tienes que hacer es escribir, en el método donde defines el textfield ( getTextField2() o getTextField3(), en tu caso), lo siguiente (insisto, escribelo DENTRO del método donde defines el textfield):



   /* Le decimos al textfield que "escuche" cuando le escriban un caracter */
   <NOMBRE_DE_ESTE_TEXTFIELD>.addKeyListener(new java.awt.event.KeyAdapter()) {
       public void keyTyped(java.awt.event.KeyEvent e) {
           /* Llama al método para las mayúsculas o oara solo números, el que sea */
       }
   }



¡Y ya está!

¡Saludos!
#3
Java / Árbol multirrama en Java. ¿Estándar?
6 Noviembre 2009, 00:45 AM
Hola a todos, vengo a preguntaros si alguien podría decirme si en la biblioteca estándar de Java puede encontrarse un árbol multirrama no equilibrado ni autobalanceable como estructura de datos. He encontrado varias clases, pero toda la información que encuentro sobre ellas es poco completa (incluido en los javadocs y los tutoriales) y no quiero dar palos de ciego por varias bibliotecas hasta encontrar lo que busco, si es que está disponible.

Me explico: Quiero un árbol tal que pueda meterle a cada nodo tantos hijos como quiera, y que no se compense ni equilibre de forma automática. Necesito tener control total de cada nodo y sus hijos, y poder meter y sacar elementos donde sea sin importar si están las ramas compensadas o no.

¿La causa? Estoy haciendo un motor/creador de RPG's en Java y las habilidades de los personajes las quiero guardar en un árbol, parecido al árbol de habilidades del Diablo II o el árbol de tecnologías del Civilization (es decir, hay que aprender una habilidad para tener acceso a sus "hijas"); pero claro, necesito una estructura que no se "equilibre" sola ni me inserte las cosas donde ella quiera (imaginaos el descalabre que habría).

Si existe un árbol en alguna biblioteca estándar (o no) de Java que me pueda servir, os agradecería muchísimo que me lo indicarais.

Un saludo, gente, y muchas gracias de antemano.