octubre 28, 2006


JAVA - HTML dentro de componentes Swing



Un pequeño tips que acelera un poco el codificar que es usar html dentro de java (NO JSP.. y esas cosas), si no poner código html dentro de un componente de Swing JLabel, JButton, Panel..etc..
Esto no se desde que versión se puede utilizar pero yo la he usado desde la versión JDK1.4.

Veamos unos ejemplos, si desearan tener un botón(Jbutton ) o un Jlabel con salto de linea es super sencillo o formulas mátematicas podrían hacer algo así:

"Para muestra un Botón" con html :

new JButton("<html>"
+ " &#8730;49<hr>2<sup>&#188;</sup>"
+ " </html>");

se ve así:

Jbutton con HTML


Esto puede ser util cuando quieran mostrar un texto muy largo en Html con salto de lineas, ya que por ejemplo los JButton no funcionan los saltos de linea "\n", y conhtml se ajusta solo el texto


import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.WindowConstants;
public class TextosLargos extends JFrame{

TextosLargos(){
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
setSize(400,200);
getContentPane().setLayout(new GridLayout(1,2));
getContentPane().add(new JButton(
"Este texto \n es demasiado \n largo para"
+ "\n salir"));
getContentPane().add(new JButton(
getContentPane().add(new JButton(
"<html> This string is longer than the "
+ "display. </html>"));
}

public static void main(String[] args) {
new TextosLargos().setVisible(true);
}
}



Ventana con 2 JButton con textos largos el de la derecha tiene HTML.
y se ajusta solo al tamaño del componente.



En esta se nota un poco como se ajusta el texto al tamaño del componente, comparada con la imagen anterior.


Y ahora una de las cosas más poderosas quizas, usar hojas de estilo (CSS).
Si las hojas de estilo (css) pueden cambiar plenamente el diseño de una página web. se podran usar Hojas de estilo en los componentes Swing?
Si se puede!!!!

Esto se podría hacer en HTML.

<style>
p {
color: red;
}
sup {
color:yellow;
}
</style>


Y un ejemplo de CSS en Java, donde se crea una variable con el style y después es usado en un par de botones. Por lo tanto si alguien quiere modificar como se muestran los botones modifica el CSS.


import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.WindowConstants;

public class BotonesHojasEstilo extends JFrame {

private static final String HTML_HEAD_STYLE =
"<head> <style>"
+ "p { color:red; }"
+ "sup { color:yellow; }"
+ "</style> </head>";

BotonesHojasEstilo() {
setSize(300, 200);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
getContentPane().setLayout(new GridLayout(1, 3));
getContentPane().add(new JButton("<html>" +
HTML_HEAD_STYLE+ // especifica la hoja de estilo
"<h1>1<sup>st</sup></h1>" +
"<hr> <p> Use Blue</p></html>"));

getContentPane().add(new JButton( "<html>" +
HTML_HEAD_STYLE+
"<h1>2<sup>nd</sup></h1>" +
"<hr> <p>Use <b>Red</b></p></html>"));

getContentPane().add(new JButton(
"<html><h1>3<sup>rd</sup></h1><hr>" +
"<p color=green> Use <u>Green</u></p></html>"));
}

public static void main(String[] args) {
new BotonesHojasEstilo().setVisible(true);
}
}



JButtons con CSS.


Y han visto algo como esto :

<link href="./jbutton.css" rel="stylesheet" type="text/css">

Exportar una Hoja de estilo desde un archivo, esto tipico bueno en JAVA también pueden. O sea
podrían cambiar el codigo modificando archivos de textos.... Acá pueden ver como... (el último ejemplo lo saque desde esa página).

Cualquier duda o algun error que cometi en los códigos me avisan en los comentarios nomas, nos vemos.

octubre 17, 2006


DocWeb - Experimento de traducción del Javadoc



El señor James Gosling uno de los creador de Java, publico un proyecto de puro aburrido que estaba.
El proyecto ayuda a la traducción de la documentación del Javadoc para la 6ta versión de Java que se viene, en realidad sirve para cualquier Javadoc de cualquier proyecto ya que
Todos los fuentes estan disponibles bajo Licencia GPL en docweb.dev.java.net

Es super sencillo parece que nadie de habla habia entrado por que no pille nada en español, pero al igual que cuando tienes una hoja en blanco y la empiezas a llenar empece con las frases de la aplicación y trate de traducir un poco los constructores de la clase String.

Si quieren ayudar con su granito de arena es super sencillo se suscriben (necesitan un nick, el correo y password, nada especial) en
http://doc.java.sun.com/DocWeb/

y ya estan ahora pueden ser traductores de Java :-),


Esquina de la página donde se ven algunos menues.


Si se fijan en la parte superior se ve un combobox con los diferentes idiomas soportados, y un combobox con opciones (traducir, votar, leer o imprimir) y bajo unos links con más opciones, también se ve el botón para enviar las traducciones. es super sencillo de usar.

Lo único malo que encontre fue que la página con Estadisticas sale un error (404) pero bueno..

ahora a poner su granito de arena a la comunidad. ;-)

Me acorde de mi primer grano de arena a la wikipedia (Viktor Frankl, fundador de la logoterapia), cuando lo subí no estaba en ningún idioma y ahora esta en montones.

Links : Post de James Gosling

octubre 09, 2006


Musica en el metro


A continuación dejo algunas de las tocatas que se hara en el metro el mes de Octubre.
Todas a las 19:00 Horas. menos Boomer que es a las 17:00

  • Sónica y De Saloon. Estación Grecia (línea 4), martes 10 de octubre.
  • La Contru. Estación Puente Alto (línea 4), jueves 12 de octubre.
  • Boomer y FunkReal. Estación La Cisterna (línea 2), martes 17 de octubre. 17 horas.
  • Mario Rojas y Las Capitalinas. Estación Bellas Artes (línea 5), jueves 19 de octubre.
  • Carmen Prieto y Santiago 4. Estación Tobalaba (línea 1), martes 24 de octubre.
  • Magdalena Matthey y Gepe. Estación Universidad de Chile (línea 1), jueves 26 de octubre.
  • Los Santiaguinos y Zinatel. Estación Cal y Canto (línea 2), jueves 9 de noviembre.
  • Papanegro y Daniela Aleuy. Estación Plaza de Armas (línea 5), martes 14 de noviembre.


Links :

-sonica.cl
-desaloon.cl
-matthey.scd.cl
-carmenprieto.scd.cl
-lascapitalinas.cl
-papanegro.cl
-lossantiaguinos.scd.cl
-GEPE - jacobinodiscos.cl
-GEPE - quemasucabeza.com
-GEPE - fotolog

octubre 07, 2006


Javiera Mena - Lanzamiento del disco "Esquema Juveniles"


Hace unos dias fui a una de las grandes tocatas de la musica chilena.. Javiera Mena lanzaba su primer disco "Esquema Juveniles" ( que como dice es el segundo en realida, el primero es de canciones más folk).
Fue una tocata buenisima, en un local bastante bueno que estaba completamente lleno con estrellas del jet-set criollo y todo..

La tocata la abrio $990 habia escuchado un par de temas de ellos pero no me llamaban mucho la atención pero en vivo igual estubo bueno, en especial la vocalista es fantastica la cara que tiene al cantar es como que te hipnotizara. Y después mostraron algo como un making-off y luego el video del primer single del disco "Esquemas Juveniles", video medio MTVnesco pero igual bien :D ...

y enderepente aparecio javiera toda de blanco y radiante. Y de ahí en adelante una de las presentaciones más buena en cuanto a calidad de las que a realizado ( por lo menos de las que he visto ). Solo faltaron un poco más de improvisación creo, pq estubo buena pero mm... como muy ensayado.. pero por eso igual salio super bien igual, ojala le vaya bien con su disco y sera para la proxima nomas...

Les dejo un video que capture del Show...



Links :
- Página oficial : javieramena.cl
- Myspace hecha por un fan : myspace.com/javieramena
- Creo que su fotolog : fotolog.com/esquemajuvenile

septiembre 03, 2006


Nicanor Parra - Obras publicas



Hace un par de sábados con unos amigos fuimos a ver la última exposición de Nicanor Parra, "Obras públicas" que durará Hasta el 6 de octubre en el Centro Cultural Palacio La Moneda estuvo entretenidísima además, con el humor particular del antipoeta que hace reirnos de nosotros mismos y de cosas super simples y complejas a la vez.

PD: aunque los domingos son gratis, hay unas colas inmensas así que si pueden vayan los días que pagan, sale 300 escolar y 600 precio normal para ahorrarse filas... ahh.
y recuerden que la exposición durante el tiempo que esté siendo mostrada la estarán cambiando así que para verla completa no bastará con ir un solo día..

Les dedico este jeroglícos bye...

"π __ l que lee"

(Presionando en Leer más hay más artefactos..)



"TBC TπC TKG TDG IBB GGG"


"El pago de chile"


"El orden de los factores"


"Algunos gorros que le han puesto al autor"


"Recuer2 Olvida2"

Links:
Centro Cultural Palacio La Moneda
Nicanor Parra

septiembre 01, 2006

¿Qué lenguaje de programación eres?



You are Perl, People have a hard time understanding you, but you are always able to help them with almost all their problems
Which Programming Language are You?

"Eres Perl, La gente le cuesta entenderte, pero estas siempre disponible a ayudarlos con casi todos sus problemas."
..mmm

agosto 29, 2006


CHC + YAIA


El sabado fuí a una tocata la raja, era de CHC y de YAIA además tenian de invitado al genial GEPE en la batería.
Fue un show super movido haciendo bailar a toda la "Gente" que estaba en el local del Club "Mist".

El sonido estubo buenisimo, el show partio con harto ritmo y muy rico con la musica de YAIA y las espectaculares nea y lady clarita que aparecieron con un vestuario que acentuaba sus curvas tocaron como 6 canciones y ahora con banda en vivo :) que se agradece demasiado las canciones estuvieron todas muy movidas pero la canción "if" estubo especialmente muy buena para el leseo en vivo inyectando demasiada energia en el publico.

Una vez terminado el excelente show de YAIA + gepe despues de unos minutos aparecieron la Congregación de Hermanos Contemplativos (CHC), con su nueva contratación DJ Caso en los scrach, cada vez suenan mejor en vivo dejando de lado las bases y creando sonidos en vivos, el show fue buenisimo lo unico malo que personalmente creo que faltaron un par de canciones, primero una que suena muy bien en vivo "Ignorancia armada" y una que es ya un clasico "evolución", lo bueno eso si fue que tocaron un par de canciones del nuevo disco que se supone que se viene muy pronto "vivi" que sale en la tocata del programa dingodomingo de radio concierto (podcast chc) y la otra no recuerdo el nombre, luego como siempre terminaron con Party Body que en vivo suena genial dejando a todos con el animo arriba..

en general un super buen show lo más bakan es que cada vez se pone mejor...

Algunas fotos (para ver las fotos presione donde dice "Leer más!"):



Yaia + chc club mist
Yaia


Yaia + chc club mist
Yaia


Yaia + chc club mist
CHC


Yaia + chc club mist
CHC



Links :
CHC
holachc.com (pagina oficial)
myspace holaCHC
flick chc
YAIA
YAIA (no estan los temas :-( )
GEPE
MySpace gepe
Disco 5x5 de GEPE
info de tocatas de gepe

agosto 28, 2006

Acerca de la Entrevista a Carlos Cardoen-"Lo que es de todos, No es de nadie."



En la revista campo salio una muy buena entrevista a Carlos Cardoen un destacado empresario chileno ( y quizas el más buscado internacionalmente por ventas de armas link ).
Que acaba de recibir el premio "Premio a lo Chileno 2006" dado por empresas Iansa, en donde habla de sus inversiones en su pueblo natal Santa Cruz, y de como ve a los actuales empresarios chilenos que se preocupan principalmente de maximizar las riquezas de sus accionistas antes que cualquier otra cosa.

Algunos comentarios que me llamaron la atención principalmente ( no tienen que ver directamente la parte empresarial si no más bien con la parte humana) y que me han quedado dando vuelta.

"Mucha gente piensa que hay que ir tras el éxito. Ése es el error más grave de la tierra. El éxito en sí no existe, es una consecuencia de hacer las cosas bien. "

"Lo que es de todos, No es de nadie"

"El riesgo es inherente a la vida. No hay nada más peligroso que estar vivo, porque lo más seguro es que te vas a morir."

El ingrediente importante es la humildad. No creerse el cuento nunca. Tratar a esos dos grandes impostores de la misma manera ( refiriendose al exito y al fracaso ). Tener la humildad de hablar con la persona más sencilla de la tierra o hablar con el presidente de la misma manera.

Si quieren leer la entrevista completa esta en Revista del campo, El Mercurio, 28 de Agosto 2006. Suerte por que estos links suelen morir pronto.

agosto 15, 2006


Java : Personalizando componentes



A veces uno quisiera personalizar componentes en JAVA esto es super sencillo, por ejemplo si quisiera un JTextField como los de Deskbar que tiene algo como una lupa en el textfield.

Qué haremos ?:
Un JTextField que tenga incluido una imagen.

Jtextfield con icono de busqueda
Jtextfield que haremos.


Manos a la obra :

icono de la lupa del ejemplo
El icono que utilizaremos en el ejemplo.

*Para empezar crearemos una clase que extienda de JTextField, que sera la clase que personalizaremos.

*Luego declaramos la imagen que se dibujara, en el ejemplo se llama "stock_zoom.png"

//la imagen que incorporare al componente
String urlImage = getClass().getResource("stock_zoom.png");

private Image image = new ImageIcon( urlImage ).getImage();


*Para agregar la imagen del JtextField lo que modificaremos sera la forma de pintarse del componente. o sea tendremos que Sobrescribir el método paint
para que además de dibujar el componente por defecto dibuje una imagen.

//sobrescribiendo el componente
@Override
public void paint(Graphics g)
{
if ( isVisible() )
{
super.paint(g);//llamando al dibujado por defecto

g.drawImage( image, 0, 0, null); // dibujo la imagen
}
}

*En el código se ve como después de dibujar el componente por defecto, dibuja
una imagen.
Hasta ahora ya esta listo se ve como teniamos pensado al comienzo, salvo que la posición del cursor es tapada por la imagen. asi que nos falta setear el Margen del componente al tamaño de la imagen al momento de construir el objeto.

//agrego un margen en los constructores
{
getMargin().left = image.getWidth(null);
}

y listo eso seria las partes importantes del codigo y si tienes sugerencias ideas dudas, o quieren mejorar el JTextField con esquinas curvadas ..etc.. dejen el comentario
Y ahora el codigo completo...



Imagen que debe estar en el mismo directorio de la clase :


codigo:

import java.awt.Graphics;
import java.awt.Image;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.WindowConstants;
import javax.swing.text.Document;


/**
* @author flavin
* @date 15-08-2006
* @version $Id$
*/
public class BotonBusqueda extends JTextField{

//la imagen que incorporare al componente
private Image image =
new ImageIcon( getClass().getResource("stock_zoom.png") )
.getImage();

{//agrego un margen constructores
getMargin().left = image.getWidth(null);
}

//agrego los constructores del jtextfield
public BotonBusqueda() {
super();
}

public BotonBusqueda(Document doc,String text,int columns) {
super(doc, text, columns);
}

public BotonBusqueda(int columns) {
super(columns);
}

public BotonBusqueda(String text, int columns) {
super(text, columns);
}

public BotonBusqueda(String text) {
super(text);
}

@Override
public void paint(Graphics g)
{
if ( isVisible() ) { //sobrescribiendo el componente
super.paint(g);
g.drawImage( image, 0, 0, null); // dibujo la imagen
}
}

public static void main(String[] args) {
JFrame jframe = new JFrame();
jframe.setDefaultCloseOperation(
WindowConstants.EXIT_ON_CLOSE );

jframe.add( new BotonBusqueda() );

jframe.pack();
jframe.setVisible( true );
}

}


agosto 08, 2006


Ciclo de cine : Emir Kusturica


En la Biblioteca viva mi biblioteca favorita es chica pero la atención es super buena.. estan presentando durante los miércoles del mes de Agosto un ciclo de EMIR KUSTURICA.. Uno de mis directores favoritos todas las peliculas que he visto de el me han facinado sin lugar a dudas muy recomendadas de verdad no se lo pierdan...
Cuándo?
Todos los miércoles de Agosto a las 18:00hr.
Dónde?
Biblioteca viva, dentro del Mall Plaza Vespucio, arriba del cine.
Cuánto?
Gratis.
Calendario :
02 ago. - UNDERGROUND
09 ago. - TIEMPO DE GITANOS
16 ago. - SUEÑOS DE ARIZONA
23 ago. - GATO NEGRO GATO BLANCO
30 ago. - LA VIDA ES UN MILAGRO

Links :
Emir Kusturica
Ciclo de Emir Kusturica en Biblioteca viva
Emir Kusturica en Wikipedia
Emir Kusturica en IMDB

agosto 07, 2006

Sostenibilidad


Sostenibilidad es un proyecto que promueve un equilibrio entre el progreso y la naturaleza, avanzar sin hecharse el planeta. O como ellos se definen :
Sostenibilidad : "capacidad de satisfacer las necesidades actuales sin disminuir el potencial de las generaciones futuras para satisfacer las suyas propias"



Este es el segundo spot de la campaña.


Una muy buena campaña, a mi gusto la idea es mantener el equilibrio, sin lugar a dudas creo que es lo correcto, inclinarse a cualquier extremo siempre traen consecuencias negativas....

y el primer comercial :



Links : sostenibilidad.com

julio 29, 2006



Cursos de JAVA


Sang Shin es un tipo que le encanta enseñar de las tecnologías de Java, y ahora presentará un curso online de AJAX con JAVA, con duración de 10 Semanas.
El curso comienza el 4 de Agosto 2006, y dentro del curso enseñara cosas como AJAX con DOJO, JSF(JavaServer Faces), Google Web Toolkit y otras tecnologías.
Sang Shin además tiene varios cursos referidos con JAVA, como Web services (2 dias), J2EE (5 dias).
Todos los cursos estan disponibles en JavaPassion.com.

Referencias :
El Curso de AJAX
Curso gratuito de AJAX (Jaime Punto Cid)

julio 28, 2006

Tocata : Perrosky



Qué?
Musica en vivo
Quién?
Perrosky
Cuándo ?
Viernes 28 de Julio, 23:30.
Dónde?
Nataniel Cox #1220.
A cuánto?
$2000.-

Link : Perrosky

y Pueden ver el video :

Empiezan a tocar como al 1:42 del video.


y acá otro más raro cantando con una niñita y despúes se tiran un tema completo :-D




Otra de Google


Un nuevo proyecto de Google fue lanzado, se llama "Google code" y es una especie de sourceforge un poco más simple y ordenado a primera vista y trabaja por defecto con subversion.

Hasta ahora --en una pasada rápida-- parece más a páginas de Snippets ( como esta o esta otra), por que los titulos de los proyectos suenan a "como conectarse a AOL", como "usar web services de Amazon", o como "usar la Api * de Google ".

Referencia : google.dirson.com
Code Google

julio 26, 2006

Iconos por defecto de JAVA


Siempre tenia la duda de ¿cómo usar? y ¿cúales eran? los iconos de que trae JAVA por defecto. por ejemplo el icono de Warning de los JOptionPane, etc.
Esto puede ser útil o por lo menos yo lo quería cuando necesitaba iconos rapidos sin tener que agregar ni cargar iconos propios.


Y ahora después de buscar en Intenet y dentro del código de java por fin encontre algunos.

Para obtener los iconos por defecto, se los deben pedir a la clase javax.swing.UIManager que tiene los objetos relacionados con el look&feel (bordes, iconos, fuentes...).

Por ejemplo :

Icon icon = UIManager.getIcon("OptionPane.informationIcon");
JButton boton = new JButton(icon);



La lista con iconos esta a continuación :























































































Icono
KEY (Llave)
QuestionIcon
"OptionPane.questionIcon"
errorIcon"OptionPane.errorIcon"
informationIcon"OptionPane.informationIcon"
warningIcon"OptionPane.warningIcon"
directoryIcon"FileView.directoryIcon"
fileIcon"FileView.fileIcon"
computerIcon"FileView.computerIcon"
hardDriveIcon"FileView.hardDriveIcon"
floppyDriveIcon"FileView.floppyDriveIcon"
newFolderIcon"FileChooser.newFolderIcon"
upFolderIcon"FileChooser.upFolderIcon"
homeFolderIcon"FileChooser.homeFolderIcon"
detailsViewIcon"FileChooser.detailsViewIcon"
listViewIcon"FileChooser.listViewIcon"
expandedIcon"Tree.expandedIcon"
collapsedIcon"Tree.collapsedIcon"
openIcon"Tree.openIcon"
leafIcon"Tree.leafIcon"
closedIcon"Tree.closedIcon"