look&feel + java?

Iniciado por coolfrog, 8 Septiembre 2005, 04:44 AM

0 Miembros y 2 Visitantes están viendo este tema.

coolfrog

alguno de ustedes sabe como usar los themas de java.
baje algunos  archivos comprimidos .jar que creo que es donde estan las clases que generan los skins.
Lo que no se es como llamarlos , como usarlos? hay que importar algo?
vi algunos ejemplos hechos , con los themas predefinidos de java , y lo saca de un archivo .jar , como hago para incluir otras nuevas mascaras?
donde tengo que descomprimir o que ?
ayudenme porfavor, y si pueden pasen algun codigo completito con importaciones y todo.

gracias de antemano.

cimi

temas??? pasa el link de donde los bajaste haber que puedo hacer,,, supongo que ha de ser igual que cuando utilizas las clases de un driver para cierto tipo de bases de datos.
THE DEATH IS JUST THE BEGIN

coolfrog

los themas estan :
www.javootoo.com
ahi hay un monton.
bajenlos y me dicen como les va.

cimi

pues bien camarada primero que nada gracias por comparti los enlaces, y pues te informo que acabo de probar un tema, supuse que seria algo parecido como cuando cargas un controlador de bases de datos como anteriormente te habia comentado y ciertamente estaba en lo correcto, en mi caso descomprimi el zip que habia descargado y usando mi super Eclipse agrege el archivo .jar al building path de mi clase, posteriormente solo puse las siguientes lineas en el constructor:
.....
import UIManager;
.....
   public InterfazGui() {
      //estableciendo LookAndFeel
      try{
         UIManager.setLookAndFeel(new com.incors.plaf.kunststoff.KunststoffLookAndFeel()); 
      }catch(Exception e){
         e.printStackTrace();
      }
.....
.....
el theme lo jalo perfectamente y esta muy chido porcierto, no se porque no funcione en tu caso, considero que debido a que solo importas el .jar no importa donde descomprimas el archivo que bajes pero si importa que construllas el path de manera correcta o bien que el archivo este incluido en la variable de ambiente del classpath, en winbugs no lo he hecho pero en linux utilizo a Eclipse para hacer estas tareas, o bien en consola puedes teclear:
export CLASSPATH=/home/cimi/programas/tema.jar

espero te sirva todo es rollote, no quise agregar mi archivo completo de la interfaz donde lo implemente porque es muy extenso y puede confundirte pero si lo necesitas por cualquier cosa postea y vere la forma de implementarlo en algo mas sencillo y asi proporcionarte todo el codigo.

suerte...
THE DEATH IS JUST THE BEGIN

coolfrog

pues ni asi me funciona.
este codigo no creo que este mal, es para llamar  al look:

public login() {
        initComponents();
//String look = "com.sun.java.swing.plaf.metal.MetalLookAndFeel";
//String look="javax.swing.plaf.metal.MetalLookAndFeel";
//  String look="javax.swing.plaf.basic.BasicLookAndFeel";
//String look="com.stefankrause.xplookandfeel.XPLookAndFeel";
//String look="de.muntjak.tinylookandfeel.TinyLookAndFeel";
           String look="com.incors.plaf.alloy.AlloyLookAndFeel";
try {
    UIManager.setLookAndFeel( look );
  SwingUtilities.updateComponentTreeUI(login.this );
   login.this.validate();
        } catch( Exception e ) {
  System.err.println( "No se puede cambiar al LookAndFeel: "+look );
}

    }

de todos esos que estan en comentarios ninguno cargo, solo los que estan por defecto , que son el motif,windows y el metal.
yo los zip que baje , que tenian jars dentro los descomprimi digamos en la unidad D, en esta unidad tambien esta mi archivo de login, y el archivo .jar lo agrege al classpath de esta forma:

set classpath="D:\alloyDemo.jar";%CLASSPATH%
(trabajo en windowsMe)

tambien algunos que no tenian jar por dentro solo eran .zip los añadi de la misma forma.
Ah y tambien algunos solo llevaban las clases y otros solo los codigos fuente(importa eso?).
Al final siempre me dice que no se pudo cambiar el look.

como hago para ver el classpath de mi maquina?
por que cuando yo coloco path  en msdos sale la ruta de los binarios y esta bien.
pero cuando coloco classpath , dice que no se reconoce el comando.

una ayudita mas porfavor?

cimi

que tal camarada, pues el codigo tampoco le veo problema, creo que la jvm no esta reconociendo las librerias externas jar que ahora estas utilizando. 

hace pocos dias me puse a jugar y sin el eclipse trate de corre un programita que utilizaba mysql y uno de los look and feel que baje, vaya sorpresa que me lleve, no me cargaba las clases externas como el driver de mysql y el archivo .jar del look, entonces comence a ver cual podria ser el problema porque desde eclipse todo funcionaba sin problemas y ejecute la ayuda del comando java (estoy bajo linux Slackware), descubri que habia que pasarle al classpath de la makina virtual las librerias que estaba usando, supongo que algo parecido puede estar pasando en tu caso puedes probar e intentar jugar un poco con esto ahora ya tienes mas idea. Por ejemplo en una consola de msdos puedes escribir algo asi:

Si tu clase esta en el mismo directorio que el archivo lookandfeel

java -cp lookandfeel.jar:  MiClase


o bien si el archivo lookandfeel esta en C:\

java -cp C:\lookandfeel.jar: MiClase


si decides cargar varios lookandfeel puedes hacer lo siguiente:

java -cp lookandfeel1.jar:lookandfeel2.jar: MiClase

Chekate los dos puntos no estan de mas, son importantes pa que todo funcione...

bueno espero haber ayudado a resolver el problema, suerte...
THE DEATH IS JUST THE BEGIN

coolfrog

bueno gracias por tus consejos cimi ,pero una cosa mas, que es el eclipse del que hablas , o donde puedo bajarlo?
y cuando te refieres a "Miclase", es la clase de tu programa principal supongo, o sea por ejemplo.

java -cp C:\lookandfeel.jar:hola.java

donde hola tiene el main , es asi?

o deberia ser con el hola.class?

y ademas si son varios archivos, no solo hola.java como hago?
o sea una aplicacion con ventanas en la que una llama a la otra y asi sucesivamente.

cimi

ok pues,, vamos por pasos, el eclipse es un IDE hecho en java y para java, un editor pues pa programar en java, es gratuito y opensource: www.eclipse.org

ciertamente estas en lo correcto, cuando me refiero a Miclase es la clase del programa principal, pero recuerda algo,,, los ejemplos que te puse estan correctos son como yo probe el codigo, recuerda que para correr un programa en java desde una consola o linea de comandos, solo debes teclear:  java Miclase , "" sin extensión "" de lo contrario el interprete no lo identificaria y no ejecutaria la aplicacion,  es por esto que puse

java -cp C:\lookandfeel.jar: MiClase

SIN EXTENSION  recuerdalo, y por ultimo respondiendo a tu ultima pregunta no te preocupes de tener que agregar todas tus clases, simplemente llama a la clase principal y esta se ocupara de las demas,  en el ejemplo sobre el cual lo probe, mi clase principal(la que contenia el main) extendia de otra clase que consistia en una interfaz y ademas utilizaba clases externas para manejar basess de datos, cuando corri el programa solo me asegure que todas estuvieran compiladas y que para cada una existiera su .class, y despues simplemente ejecute mi aplicacion llamando a mi clase maestra la que tenia el main: BasePrueba.class


java -cp C:\lookandfeel.jar: BasePrueba


saludos espero te ayude...
THE DEATH IS JUST THE BEGIN