
I never dreamed that I'd meet somebody like you. [?]
¡Añademe a tus favoritos!
Contacto
Post al azar
RSS
BUSCAR
Mapa de la web
Por
Saiyine
el 2010-05-06 09:23:53 - Secciones: - Enlace permanente: 920
Dado el exito de la calculadora de conversion entre dolares y euros, he pensado que quizás estaria bien poder convertir entre otras monedas, y dado que el ultimo comentario de la calculadora pedia pesos colombianos, me he decidido por ellos.
Esta version de la calculadora es sencillisima de usar, solo teneis que escribir la moneda que querais convertir, por ejemplo, pesos colonbianos, y automaticamente saldran las conversiones en las otras monedas, es decir, en dolares y euros. ¡No hay manera mas facil de convertir pesos colombianos en dolares y euros!
Por
Saiyine
el 2010-02-22 11:12:32 - Secciones: - Enlace permanente: 909
Una chuletilla de ejemplo para tener a mano como se leen enteros de la entrada de linea en Java.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
*
* @author Saiyine
*/
public class PedirEnteros
{
public PedirEnteros()
{
}
public int obtener()
{
String linea = null;
int val = 0;
try
{
BufferedReader is = new BufferedReader(new InputStreamReader(System.in));
linea = is.readLine();
val = Integer.parseInt(linea);
} catch (NumberFormatException nfex)
{
System.err.println("No es un entero: " + linea);
} catch (IOException ioex)
{
System.err.println("Error de entrada salida: " + ioex);
}
return val;
}
public static void main(String[] args)
{
PedirEnteros pe = new PedirEnteros();
int entero1 = pe.obtener();
int entero2 = pe.obtener();
System.out.println(entero1);
System.out.println(entero2);
}
}
A petición de un comentario, aunque es sencillisimo.
Por
Saiyine
el 2010-02-22 11:09:49 - Secciones: - Enlace permanente: 908
Este sencillo codigo busca los numeros primos que se pueden encontrar dentro de un rango dado por dos enteros.
/**
*
* @author Saiyine
*/
public class BuscarPrimos
{
public BuscarPrimos()
{
}
public boolean esPrimo(int p)
{
if (p>1)
{
int top=(int)Math.round(Math.sqrt(p))+1;
for (int i=2;i<=top;i++)
if ((p % i == 0) && ( p != i))
{
return false;
}
return true;
}
return false;
}
public void rango(int a, int b)
{
for (int i=a;i<=b;i++)
if (esPrimo(i))
{
System.out.println(i);
}
}
public static void main(String[] args)
{
BuscarPrimos bp = new BuscarPrimos();
bp.rango(0, 200);
}
}
No tiene mucho misterio, aunque yo usaria programación dinamica para obtener el listado de enteros.
Por
Saiyine
el 2009-07-19 05:17:27 - Secciones: - Enlace permanente: 881
This is an easy to use tool to know the equivalency between dollars and euros.
How it works: just write the amount you want to know the exchange, and push the button corresponding to the other currency, and that's it. Like, if you have 80.40 dollars and want to know its value in euros, write it in the space left to the button called "Dollars", press it, and the value in Euros will appear.
Por
Saiyine
el 2009-05-10 08:15:57 - Secciones: - Enlace permanente: 874
Esta es mi entrada para el reto de encontrar el punto fijo de MD5 que mencionaron el otro dia en programming.reddit. No es un código muy limpio, sino más bien una prueba de concepto para ver que tal se portaba Java... y se porta tres ordenes de magnitud más lento que las implementaciones en C tirando de OpenSSL que usa el ganador (amén de una granja de P4).
En mi maquina de casa, este código me saca unas 44.000 sumas por segundo por nucleo, muy lejos de los millones por segundo de las versiones en código nativo.
package com.saiyine.experimentos.md5;Por
Saiyine
el 2009-04-06 08:13:20 - Secciones: - Enlace permanente: 871
Via Mundogeek descubro que desde hace unos añitos, parece ser que desde la especificación Java 1.5, se puede pasar un número variable de parámetros a cualquier método.
En realidad se convierte en un array en tiempo de compilación, pero que se le va a hacer, algo es algo. Además, puntos extra por utilizar un foreach para la demostración.
public class Conjunto { public Conjunto(String... cadenas) { for (String cadena : cadenas) System.out.println(cadena); } public static void main(String... args) { Conjunto saludos = new Conjunto("Hola", "Ciao", "Hello"); Conjunto mascotas = new Conjunto("Pulpo"); } }
Por
Saiyine
el 2009-01-26 08:24:53 - Secciones: - Enlace permanente: 859
Este es un truco bastante sencillo, pero que puede usarse para efectos muy interesantes, como los típicos botones difuminados que se definen al pasar el ratón por encima, o el ya clásico de la hilera de iconos que el icono que tiene el puntero de ratón encima es mayor que los demás.
El código, muy simple, seria algo como:
<img src="imagen1.jpg"
id="img"
onmouseover="img.src='imagen2.jpg'"
onmouseout="img.src='imagen1.jpg';">
Por
Saiyine
el 2008-12-30 02:52:02 - Secciones: - Enlace permanente: 856
Como lo prometido es algo que debe cumplirse, aqui llevais mi primera obra maestra en Processing.
Aunque la primera impresión es que el entorno de programación es una porqueria, y a los 10 minutos ya estaba revisando si se le puede echar mano al código fuente y hacer que el cortar y pegar funcione como dios manda, tengo que admitir que la idea en si es bastante buena: una abstracción basada en la maquina virtual de Java para trabajar con gráficos.
Todo funciona al pelete, aunque igual la ayuda es un poco petarda y el entorno es una mierda. Es sopar unos cuantos ejemplos y ya lo tienes todo para concentrarte en trabajar con imagenes directamente con los valores RGB de cada punto. A ver si encuentro mis viejos programas en Pascal de cuando programar en VGA con 256 colores era tirar un puntero y a jugar, y los vuelvo a la vida con este programazo.
¡Además punto extra porque uno de los dos tipos que han montado esto se apellida Fry! ¡Jugón!
/**
Por
Saiyine
el 2008-08-19 02:46:58 - Secciones: - Enlace permanente: 845
Hacer sonar la campana de windows, o mejor dicho, el sonido asociado al evento campana, desde Java, es bastante fácil, solo teneis que usar la siguiente linea:
Toolkit.getDefaultToolkit().beep();
Recordad que, al ser un método gráfico, debeis incluir lo siguiente al comienzo de vuestra clase:
import java.awt.*;
Por
Saiyine
el 2008-06-17 12:07:06 - Secciones: - Enlace permanente: 838
A raiz de esta entrada del foro de goalunited en la que se comenta una formula para optimizar los entrenamientos, me he decidido a compartirla en la web por si a alguien le pudiera interesar.
Bueno, la verdad es que lo primero que he pensado ha sido probar a poner una aplicación ROR en heroku, pero es solo de invitación, así que habrá que contentarse con un sencillo javascript de los de toda la vida.
Esto va así: introducid en las casillas la habilidad, experiencia y motivación de vuestro Segundo Entrenador, y obtendreis un número, que he llamado Capacidad por llamarlo de alguna manera, que, presuntamente, si es menor que 1, te permitirá entrenar una habilidad sin descanso tantos cuadraditos como le hayas puesto.
Cuadritos:
Habilidad:
Experiencia:
Motivacion:
Por
Saiyine
el 2008-05-12 07:29:46 - Secciones: - Enlace permanente: 822
¡Mi eclipse ha dejado de auto-completar! Por alguna razón, el entorno de programación Eclipse deja de autocompletar el código que vamos escribiendo.
Estamos programando y de repente, sin comerlo ni beberlo, Eclipse deja de mostrar los métodos que tiene a su disposición el objeto que acabamos de escribir. Como mucho, nos muestra un error diciendo que la linea no puede acabarse así, por las buenas, con un punto.
Para solucionarlo, id a: Window -> Preferences -> Java -> Editor -> Content Assistant -> Advanced y pulsad en Restore defaults. ¡Eso deberia hacer el milagro!
Por
Saiyine
el 2008-01-06 02:47:12 - Secciones: - Enlace permanente: 811
En relación a la entrada "Ejecutar en segundo plano usando hilos (threads)", me gustaria comentar que un error muy común, que ha sido perpetuado por algún libro de texto, es creer que los métodos run y start de los hilos son equivalentes. Nada más lejos de la realidad, como os muestro con este ejemplo.
public class ThreadsEjemplo2 extends Thread
{
public ThreadsEjemplo2(String str)
{
super(str);
}
public void run()
{
for (int i = 0; i < 10 ; i++)
{
try
{
Thread.sleep(Math.round(Math.random()*200));
} catch (Exception E)
{
}
System.out.println(getName());
}
System.out.println("Fin " + getName());
}
public static void main (String [] args)
{
new ThreadsEjemplo2("A").run();
System.out.println("Y ahora los demás");
new ThreadsEjemplo2("B").start();
new ThreadsEjemplo2("C").start();
new ThreadsEjemplo2("D").start();
}
}
La salida de esta clase nos muestra claramente que primero se ejecuta el primer "hilo", que no es tal, sino una ejecución lineal normal y corriente debido a la llamada incorrecta a al método run en vez de al start, y luego si se lanzan los otros tres como debe ser.
A A A A A A A A A A Fin A Y ahora los demás B D B C D B C C D B B C D B C B C D B C B D B Fin B D C D C D D Fin D C Fin C
Aaah, está bien, lo admito: me pasó a mi el otro día y lo he escrito más como autorecordatorio que otra cosa.
Por
Saiyine
el 2007-12-23 04:35:03 - Secciones: - Enlace permanente: 807
La letra del DNI sirve para validar que el DNI introducido es correcto y no una simple invención, siendo bastante fácil de calcular, ya que es un simple resto codificado del número.
Para obtener DNIs válidos, introducid numeros cualesquiera en el siguiente espacio habilitado:
Y, a continuación, el código fuente para que hagais los experimentos pertinentes...
<head>
<script>
function objeto(id)
{
return document.getElementById(id);
}
function verletra()
{
cadena="TRWAGMYFPDXBNJZSQVHLCKET";
posicion = objeto("dni").value % 23;
letra = cadena.substring(posicion,posicion+1);
objeto("dnidiv").innerHTML = objeto("dni").value+" - "+letra;
}
</script>
</head>
<body>
DNI:<br>
<input type="text" id="dni" maxlenght="9" size="9" onkeyup="verletra()">
<h1><div id="dnidiv"></div></h1>
</form>
</body>
Por
Saiyine
el 2007-12-22 06:22:08 - Secciones: - Enlace permanente: 806
The easiest way to write text into a file with Java is shown in the next code.
try
{
BufferedWriter out = new BufferedWriter(new FileWriter("outfilename"));
out.write("aString");
out.close();
}
catch (IOException e)
{
}
Beware that this code will overwrite the file.
Por
Saiyine
el 2007-12-22 06:21:34 - Secciones: - Enlace permanente: 805
La manera más sencilla de escribir texto en un fichero en Java parece ser la siguiente.
try
{
BufferedWriter out = new BufferedWriter(new FileWriter("nombre del fichero"));
out.write("cadena");
out.close();
}
catch (IOException e)
{
}
Ojo que este código sobreescribirá el fichero si ya existe.
Por
Saiyine
el 2007-11-10 12:27:37 - Secciones: - Enlace permanente: 798
Si tu programa en Java se queda sin memoria suficiente, tiene lugar el siguiente error:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
Se puede deber a dos motivos:
* Que tu aplicación en Java tenga una perdida de memoria. Toca buscar el problema en el código, en breve os haré un post comentando el profiler que suelo usar, que me parece genial aunque a 400€ por licencia no creo que esté al alcance de todo el mundo.
* Que tu programa realmente necesite un montón de memoria. En este caso, la memoria disponible la puedes incrementar llamando a la maquina virtual con estos parametros:
java -Xms<tamaño de inicio de la memoria> -Xmx<tamaño máximo>
Por defecto tenemos:
java -Xms32m -Xmx128m
Estos parametros se pueden pasar en diferentes puntos dependiendo del entorno que utilicemos para programar.
Por
Saiyine
el 2007-11-10 12:15:29 - Secciones: - Enlace permanente: 797
Conocer la cantidad de memoria libre en un programa Java es realmente sencillo:
public class Memoria
{
public static void main(String[] args)
{
System.out.println("Total: "+Runtime.getRuntime().totalMemory());
System.out.println("Libre: "+Runtime.getRuntime().freeMemory());
}
}
Por
Saiyine
el 2007-10-20 06:45:13 - Secciones: - Enlace permanente: 796
With the next code you'll be able to know the calling hierarchy at runtime, or, in layman's words, who the heck is calling your code while the program is running. It has a problem, tough: it only works for Java 5 or better.
public class Llamadas
{
static public void fin()
{
StackTraceElement trace[] = Thread.currentThread().getStackTrace();
for (StackTraceElement St : trace)
{
System.out.println(St);
}
}
static public void salto()
{
fin();
}
public static void main(String[] args)
{
salto();
}
}
Should print something like...
java.lang.Thread.getStackTrace(Unknown Source)
pruebas.Llamadas.fin(Llamadas.java:7)
pruebas.Llamadas.salto(Llamadas.java:16)
pruebas.Llamadas.main(Llamadas.java:21)
The code is extremely simple: the main class calls salto, who itself calls the fin method. This fin method contains a foreach wich prints the return from a call to getStackTrace, the subroutine call stack.
Por
Saiyine
el 2007-10-20 06:37:48 - Secciones: - Enlace permanente: 795
Con el siguiente código podreis conocer la jerarquia de llamada de vuestro código en tiempo de ejecución, con la única limitación de que solo funciona a partir de Java 5:
public class Llamadas
{
static public void fin()
{
StackTraceElement trace[] = Thread.currentThread().getStackTrace();
for (StackTraceElement St : trace)
{
System.out.println(St);
}
}
static public void salto()
{
fin();
}
public static void main(String[] args)
{
salto();
}
}
Deberia devolver algo como...
java.lang.Thread.getStackTrace(Unknown Source)
pruebas.Llamadas.fin(Llamadas.java:7)
pruebas.Llamadas.salto(Llamadas.java:16)
pruebas.Llamadas.main(Llamadas.java:21)
El programa es extremadamente sencillo: la clase principal llama al método salto, que a su vez llama al método fin, que es el que contiene la llamada a getStackTrace, que es ni más ni menos que la pila de llamadas de subrutina.
Por
Saiyine
el 2007-08-23 12:14:10 - Secciones: - Enlace permanente: 789
With the next code we'll be able to control the priority our Java program's threads run.
Thread me = Thread.currentThread();
me.setPriority(Thread.MIN_PRIORITY);
For the example we've used the minimun priority, so every other process will have preference for CPU time but this. To check the others priority levels, look at the Thread object with an object inspector, or use an IDE with the ability of showing avaliable methods as you program, like Eclipse.
There's a problem: JDK has 10 priority levels, while every OS has its own number. For example, Windows NT has seven and is not uncommon for a Unix system to be in the hundreds. The best approach is to stick to MAX_PRIORITY, NORM_PRIORITY and MIN_PRIORITY within the code.
Por
Saiyine
el 2007-08-23 12:13:41 - Secciones: - Enlace permanente: 788
Con el siguiente código podremos controlar la prioridad con que corren los hilos, o threads, de nuestros programas Java.
Thread me = Thread.currentThread();
me.setPriority(Thread.MIN_PRIORITY);
Para el ejemplo hemos usado la prioridad minima, es decir, que cualquier otro proceso tenga preferencia en la cpu antes que nuestro hilo. Para ver otros niveles de prioridad, consulta el objeto Thread con un inspector de objetos, o usa un entorno de programacion que muestre los metodos disponibles conforme se escribe, como Eclipse.
Pero hay un problema, la maquina virtual de Java tiene 10 niveles de prioridad que no tienen porqué coincidir con los del sistema operativo sobre el que está corriendo. Por ejemplo, Windows NT tiene siete, y no es nada raro que un sistema Unix tenga cientos. Por ello, lo mejor es utilizar solo MAX_PRIORITY, NORM_PRIORITY y MIN_PRIORITY en su codigo.
Por
Saiyine
el 2007-07-05 02:46:04 - Secciones: - Enlace permanente: 782
Within Java, there are three main ways you can execute background threads: to inherit from the Thread class, to implement the Runnable interface and the TimerTask object.
This second example shows the second way, which is implementing the Runnable interface, that is almost identical to inheriting from Thread. What's its use, then? Easy, Java doesn't support multiple inheritance, so if we only had the Thread way we would be stuck without being able of accessing others classes in this way. So here comes implementing the Runnable interface, wich allows us inheriting from wichever class we want AND running the class in the background if we want to.
The code is fairly easy, and very similar to the Thread's. See that we use implementand not extends when declaring the class.
public class ThreadSample implements RunnablePor
Saiyine
el 2007-07-05 02:33:01 - Secciones: - Enlace permanente: 781
En Java, existen tres formas principales para ejecutar tareas en segundo plano: heredar la clase Thread, implementar la interfaz Runnable y la clase TimerTask.
En este segundo ejemplo os muestro la segunda variante, que es la implementación de la interfaz Runnable, que es practicamente igual que heredar de Thread. ¿Que sentido tiene, entonces? Pues muy sencillo, en Java solo se puede heredar de una clase, así que si nuestra tarea hereda de alguna otra, tendriamos que descartar el método de la clase Thread. Pero podemos, además de heredar, implementar una interfaz, y ahí entra Runnable.
El código es muy sencillo, y muy similar al ejemplo de Thread. Observad que usamos implement y no extends en la llamada de la clase.
public class ThreadSample implements RunnablePor
Saiyine
el 2007-07-03 03:22:42 - Secciones: - Enlace permanente: 779
Within Java, there are three main ways you can execute background threads: to inherit from the Thread class, to implement the Runnable interface and the TimerTask object.
This first example shows how to use the inheritance of the Thread class. Copy-paste it into your editor of choice and check how easy is to create alternative threads to your program main's. Look how the threads concurrency makes the threads output get mixed at the console: probably it'll become more aparent by increasing the top of the for.
public class ThreadEjemplo extends ThreadPor
Saiyine
el 2007-07-03 03:16:44 - Secciones: - Enlace permanente: 778
En Java, existen tres formas principales para ejecutar tareas en segundo plano: heredar la clase Thread, implementar la interfaz Runnable y la clase TimerTask.
Este primer ejemplo muestra como usar la herencia de la clase Thread. Copiad al portapapeles, pegad en vuestro editor, y comprobar lo sencillo que es crear hilos de ejecucion alternativos al principal de vuestro programa. Observad como se ejecutan concurrentemente de manera que sus salidas se mezclan en pantallas, probablemente será más evidente conforme mayor sea el bucle de ejecución.
public class ThreadEjemplo extends ThreadPor
Saiyine
el 2007-06-11 03:16:37 - Secciones: - Enlace permanente: 770
Añadir lineas a un fichero de texto es tan sencillo como el código que os presento a continuación:
try
{
BufferedWriter out = new BufferedWriter(new FileWriter("fichero", true));
out.write("linea de texto");
out.close();
} catch (IOException e)
{
}
Por
Saiyine
el 2007-06-11 02:25:34 - Secciones: - Enlace permanente: 769
Obtener el ancho y alto de la pantalla en Java es bastante fácil, solo tenemos que acceder al toolkit que estemos usando en nuestro programa, es decir, a la libreria que se encarga de dibujar los botones, ventanas y demás en la pantalla.
...
int ancho = java.awt.Toolkit.getDefaultToolkit().getScreenSize().width;
int alto = java.awt.Toolkit.getDefaultToolkit().getScreenSize().height;
...
Por
Saiyine
el 2007-05-31 03:31:21 - Secciones: - Enlace permanente: 765
El siguiente código os dirá si un fichero dado existe en el sistema.
import java.io.*;Por
Saiyine
el 2007-05-21 03:48:59 - Secciones: - Enlace permanente: 763

Bien, en vista del exito del contador pseudo-falso del otro dia, me he decidido a escribir, y cuando digo escribir me refiero, naturalmente, a pagarle a un chino para que me lo escriba, lo que creo que es el primer Ajax de la historia de la página de Saiyine. Si, se lo que estais pensando, vais a hacer la tipica broma de "Ajax, el de la Iliada", pero no, tambien se llama Ajax a hacer virguerias en javascript sin tener que recargar la página. Si, tambien es un detergente. Y un equipo de fútbol.
A menudo me preguntan como es posible que despues de todo el dia tecleando por dinero, llegue a mi casa y me ponga a teclear por placer. Es probable que la respuesta tenga relación con que nadie me lo ha preguntado nunca, pero prefiero pensar que se debe al simple hecho de que me gusta programar y que se me haga la una de la mañana haciendo cositas como este contador Ajax... cuyo código fuente explicado lo colgaré en unos dias, si alguien no pudiese o pudiera esperar para verlo, que le eche una visual a las interioridades de la página con el navegador.
Basicamente, lo que he hecho es un .php que me dice cuantas visitas llevo, y con el Ajax lo llamo cada 30 segundos. Mucho más sencillo de lo que esperaba, la verdad.
Por
Saiyine
el 2007-05-14 03:55:47 - Secciones: - Enlace permanente: 760
Ni una patada rotatoria de Chuck Norris podría expresar lo que siento en estos momentos, y no, no me refiero a la cancelación del proyecto de hacer un remake del clásico del cine El-Hombre con Brad Pitt como protagonista, sino al hecho de que en unos dias romperemos la barrera sónica de las 500.000 visitas.
Me hubiera gustado montar algo tipo lo que tienen los de devianart para simular el conteo, pero, lamentablemente, 2.000 visitas al dia son una cada 46 segundos, por lo que hubiera sido bastante soso. Pero bueno, para compensar os dejo esta tonteria en javascript y un video cortesia de Tapanez.
(El código fuente del pseudo-contador, en breve explicado en un post propio)
Por
Saiyine
el 2007-03-05 04:20:33 - Secciones: - Enlace permanente: 752
To read the data inside a file from the Web with Java is fairly easy. Just create an URL object (remember to import java.io.* to have it avaliable for your code) and tunnel its stream to the usual InputStreamReader.
Just be aware that it doesn't seem to support HTTP authentication!
import java.net.*;Por
Saiyine
el 2007-03-05 04:19:46 - Secciones: - Enlace permanente: 751
Leer los datos contenidos en un fichero de la Web en Java es bastante fácil. Simplemente, crea un objeto URL (recuerda importar java.io.* para tenerlo disponible para tu código) y envialo como entrada al típico InputStreamReader.
¡Una cosa a tener en cuenta es que no parece soportar autentificación HTTP!
import java.net.*;Por
Saiyine
el 2007-01-03 12:48:03 - Secciones: - Enlace permanente: 743
Sometimes, we need to use a selected Java virtual machine, and rarely is the Ubuntu's preinstalled, gij, but the official from Sun. To solve it should be as easy as installing the appropiated .deb packages, but it won't work, we install them and still get gij instead of Sun's.
To get to use the JVM from Sun we'll have to run the next command, forgotten for some reason by the java package maintainers:
sudo update-alternatives --config java
We'll be offered the different installed JVM and then, just have to choose our favourite.
Por
Saiyine
el 2007-01-03 12:42:08 - Secciones: - Enlace permanente: 742
A veces, necesitamos usar una maquina virtual de Java en particular, y raramente se trata de la que nuestra Ubuntu nos ofrece por defecto, gij, sino la oficial de Sun. Solucionarlo deberia ser tan sencillo como instalar los paquetes .deb, pero algo no marcha, los instalamos y al ejecutar seguimos obteniendo la dichosa gij.
Para conseguir usar la máquina de Sun deberemos ejecutar el siguiente comando, que por alguna razón a los mantenedores del paquete .deb se les olvidó incluir en el proceso de instalación:
sudo update-alternatives --config java
Nos aparecerá un menú en el que elegir nuestra máquina virtual por defecto, y a funcionar.
Por
Saiyine
el 2006-10-25 02:57:53 - Secciones: - Enlace permanente: 715
Sometimes, we need our text mode's program to keep showing the data in a single line without feeding, just like the DOS era compressors (think PkZip).
This is really easy to do with console commands, like the one to come back to the begining of the line without line feeding.
for (int i=0; i<10; i++)Por
Saiyine
el 2006-10-25 02:57:15 - Secciones: - Enlace permanente: 714
A veces, necesitamos que la salida de nuestro programa modo texto se muestre siempre en la misma linea, y que solo avance cuando se llegue a un determinado punto de ejecución, a lo pkzip.
Esto es fácil de lograr usando los comandos de consola, en este caso, el de volver al inicio de linea sin avanzar.
for (int i=0; i<10; i++)Por
Saiyine
el 2006-10-25 02:54:49 - Secciones: - Enlace permanente: 713
To get to know what key has been pressed in a web page is fairly easy. Just assign a variable to the onkeypressed event and read it, being careful to respect the diference between JScript of internet explorer and the real Javascript from other browsers. That's the meaning of the if conditional lines.
<script language="JavaScript">Por
Saiyine
el 2006-10-25 02:54:05 - Secciones: - Enlace permanente: 712
Averiguar que tecla ha sido pulsada en una página web es fácil. Simplemente, asigna una variable al evento onkeypressed y leelo, con cuidado de respetar la diferencia entre el JScript de internet explorer y el Javascript real de otros navegadores. Para eso son las lineas del if.
<script language="JavaScript">Por
Saiyine
el 2006-06-22 12:07:57 - Secciones: - Enlace permanente: 685
Buscar cadenas en un panel de texto de Java es tan sencillo como aprovechar el método indexOf de las cadenas, para lo cual tenemos que convertir primero el JTextPane en una cadena con .getText():
JTextPane tp;
...
if (tp.getText().indexOf(cadena)>-1)
{
// Hacer algo si la cadena está en el panel de texto
}
ACTUALIZACION 20060905: Una corrección, y un ejemplo, a ver si así se ve mejor.
class cadenas {
public static void main(String[] args)
{
String path = new String("Hola que tal");
System.out.println("Hola = " + path.indexOf("Hola")); // Hola = 0
System.out.println("ola = " + path.indexOf("ola")); // ola = 1
System.out.println("Jola = " + path.indexOf("Jola")); // Jola = -1
}
}
Por
Saiyine
el 2006-06-22 12:06:59 - Secciones: - Enlace permanente: 684
Los paneles de texto de Java parecen carecer de un método para añadir lineas de texto sueltas. Por ello, os propongo este pequeño truco para añadir texto a un JTextPane: leer el contenido previamente e incluirlo en la expresión.
JTextPane tp;
...
tp.setText("Esta linea se añadirá por delante del texto.\n"+tp.getText());
Observad el uso de caracteres escapados, en este caso un salto de linea, y la clave del ejemplo, el empleo del método .getText() del propio JTextPane para leer el contenido y volver a volcarlo junto con el nuevo texto.
Por
Saiyine
el 2005-05-29 23:59:00 - Secciones: - Enlace permanente: 371
Este es un minúsculo javascript que me he currado para poder ir sabiendo lo que llevo ganado con la publicidad, que los de Google dan en dolares, y de momento aquí en Europa aún no los gastamos.
Funcionamiento: escribe el valor en la moneda que tengas, con los decimales separados por un punto a lo anglosajón, y pulsa su botón para que aparezca convertido en la otra moneda. Es decir, si tienes 80.40 dolares, escribelo en la casilla "Dolares" y, al pulsar su botón, aparecera su valor en euros.
. . .
. . .
. . .
. . .
Varios ejemplos de lo que buscaban visitantes recientes:
. . .
Página web ©2001-2010 Saiyine generada en s, con 4777143 visitas en total, hoy (de un total de 0 previstas).
. . .