Foros del Web » Programación para mayores de 30 ;) » Java »

apariencia en java

Estas en el tema de apariencia en java en el foro de Java en Foros del Web. hola a todos, lo que uiqero saber es como le cambio de apariencia a los contrloes que estoy utilizando, ya que la apariencia que tiene ...
  #1 (permalink)  
Antiguo 11/06/2011, 16:47
 
Fecha de Ingreso: abril-2011
Ubicación: lima
Mensajes: 134
Antigüedad: 12 años, 11 meses
Puntos: 3
apariencia en java

hola a todos, lo que uiqero saber es como le cambio de apariencia a los contrloes que estoy utilizando, ya que la apariencia que tiene por defecto el java pues no es muy bonitoque digamos. gracias.. estoy utilizando el NetBeans 7.0
  #2 (permalink)  
Antiguo 14/06/2011, 10:24
Avatar de jhonmelguizo  
Fecha de Ingreso: enero-2008
Ubicación: Medellín - Colombia
Mensajes: 264
Antigüedad: 16 años, 2 meses
Puntos: 6
De acuerdo Respuesta: apariencia en java

Hola,

Puedes usar la libreria Substance, adjunto un post muy bueno dónde te ayudará a configurar la apariencia de aplicaciones Desktop.

Info: http://richieblog.wordpress.com/2009...-de-substance/

Saludos...
__________________
¡No competimos, compartimos!...
  #3 (permalink)  
Antiguo 14/06/2011, 11:44
 
Fecha de Ingreso: abril-2011
Ubicación: lima
Mensajes: 134
Antigüedad: 12 años, 11 meses
Puntos: 3
Respuesta: apariencia en java

bueno lo he intentado pero sale este error cuando trato de cambiarle el skin, la verdad es que no me ha funcionado. estoy utilizando la version 5.0 de la libreria substance.jar....



org.jvnet.substance.api.UiThreadingViolationExcept ion: Component creation must be done on Event Dispatch Thread
at org.jvnet.substance.utils.SubstanceCoreUtilities.t estComponentCreationThreadingViolation(SubstanceCo reUtilities.java:2312)
at org.jvnet.substance.SubstancePanelUI.createUI(Subs tancePanelUI.java:57)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java :37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java :244)
at javax.swing.UIDefaults.getUI(UIDefaults.java:752)
at javax.swing.UIManager.getUI(UIManager.java:989)
at javax.swing.JPanel.updateUI(JPanel.java:109)
at javax.swing.JPanel.<init>(JPanel.java:69)
at javax.swing.JPanel.<init>(JPanel.java:92)
at javax.swing.JPanel.<init>(JPanel.java:100)
at javax.swing.JRootPane.createGlassPane(JRootPane.ja va:528)
at javax.swing.JRootPane.<init>(JRootPane.java:348)
at javax.swing.JFrame.createRootPane(JFrame.java:255)
at javax.swing.JFrame.frameInit(JFrame.java:236)
at javax.swing.JFrame.<init>(JFrame.java:159)
at javaapplication1.principal.<init>(principal.java:2 0)
at javaapplication1.JavaApplication1.main(JavaApplica tion1.java:21)
UIDefaults.getUI() failed: createUI() failed for javax.swing.JPanel[,0,0,0x0,invalid,layout=java.awt.FlowLayout,alignm entX=0.0,alignmentY=0.0,border=,flags=9,maximumSiz e=,minimumSize=,preferredSize=] java.lang.reflect.InvocationTargetException
java.lang.Error
at javax.swing.UIDefaults.getUIError(UIDefaults.java: 712)
at javax.swing.MultiUIDefaults.getUIError(MultiUIDefa ults.java:133)
at javax.swing.UIDefaults.getUI(UIDefaults.java:758)
at javax.swing.UIManager.getUI(UIManager.java:989)
at javax.swing.JPanel.updateUI(JPanel.java:109)
at javax.swing.JPanel.<init>(JPanel.java:69)
at javax.swing.JPanel.<init>(JPanel.java:92)
at javax.swing.JPanel.<init>(JPanel.java:100)
at javax.swing.JRootPane.createGlassPane(JRootPane.ja va:528)
at javax.swing.JRootPane.<init>(JRootPane.java:348)
at javax.swing.JFrame.createRootPane(JFrame.java:255)
at javax.swing.JFrame.frameInit(JFrame.java:236)
at javax.swing.JFrame.<init>(JFrame.java:159)
at javaapplication1.principal.<init>(principal.java:2 0)
at javaapplication1.JavaApplication1.main(JavaApplica tion1.java:21)
org.jvnet.substance.api.UiThreadingViolationExcept ion: Component creation must be done on Event Dispatch Thread
at org.jvnet.substance.utils.SubstanceCoreUtilities.t estComponentCreationThreadingViolation(SubstanceCo reUtilities.java:2312)
at org.jvnet.substance.SubstancePanelUI.createUI(Subs tancePanelUI.java:57)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java :37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java :244)
at javax.swing.UIDefaults.getUI(UIDefaults.java:752)
at javax.swing.UIManager.getUI(UIManager.java:989)
at javax.swing.JPanel.updateUI(JPanel.java:109)
at javax.swing.JPanel.<init>(JPanel.java:69)
at javax.swing.JPanel.<init>(JPanel.java:92)
at javax.swing.JPanel.<init>(JPanel.java:100)
at javax.swing.JRootPane.createContentPane(JRootPane. java:503)
at javax.swing.JRootPane.<init>(JRootPane.java:350)
at javax.swing.JFrame.createRootPane(JFrame.java:255)
at javax.swing.JFrame.frameInit(JFrame.java:236)
at javax.swing.JFrame.<init>(JFrame.java:159)
at javaapplication1.principal.<init>(principal.java:2 0)
at javaapplication1.JavaApplication1.main(JavaApplica tion1.java:21)
  #4 (permalink)  
Antiguo 14/06/2011, 15:15
Avatar de jhonmelguizo  
Fecha de Ingreso: enero-2008
Ubicación: Medellín - Colombia
Mensajes: 264
Antigüedad: 16 años, 2 meses
Puntos: 6
De acuerdo Respuesta: apariencia en java

Hola,

Yo trabajo con la versión 4.3, te recomiendo sigas los pasos del post.

Yo lo hago de la siguiente manera:

Código JAVA:
Ver original
  1. Inicio ini = new Inicio();//Esto es un JFrame
  2.         ini.setDefaultLookAndFeelDecorated(true); //que nos permite dejar a         Substance la decoracion ( por asi decirlo)
  3.         SubstanceLookAndFeel.setSkin("org.jvnet.substance.skin.BusinessBlackSteelSkin"); // Setencia que aplica el skin Creme de Substance
  4.         SubstanceLookAndFeel.setCurrentWatermark("org.jvnet.substance.watermark.SubstanceGenericNoiseWatermark");//Ejemplo de aplicacion de un watermark de Substance
  5.         ini.setExtendedState(ini.MAXIMIZED_BOTH);
  6.         ini.setVisible(true);

Espero sea de ayuda, saludos...
__________________
¡No competimos, compartimos!...
  #5 (permalink)  
Antiguo 14/06/2011, 17:04
 
Fecha de Ingreso: abril-2011
Ubicación: lima
Mensajes: 134
Antigüedad: 12 años, 11 meses
Puntos: 3
Respuesta: apariencia en java

bueno gracias por el comentario, pero de todas maneras sigue saliendo error...
  #6 (permalink)  
Antiguo 15/06/2011, 06:30
Avatar de jhonmelguizo  
Fecha de Ingreso: enero-2008
Ubicación: Medellín - Colombia
Mensajes: 264
Antigüedad: 16 años, 2 meses
Puntos: 6
Pregunta Respuesta: apariencia en java

Cita:
Iniciado por lincolnf_2 Ver Mensaje
bueno gracias por el comentario, pero de todas maneras sigue saliendo error...
Muéstranos tu código.
__________________
¡No competimos, compartimos!...
  #7 (permalink)  
Antiguo 15/06/2011, 11:54
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 3 meses
Puntos: 43
Respuesta: apariencia en java

Hola lincolnf_2 !

Aparte de la opción que menciona @jhonmelguizo, hay un "look and feel" llamado Nimbus que me gusta bastante que está disponible en la versión jdk6 y superiores:
http://vramirez.wordpress.com/2009/0...look-and-feel/

Un saludo y suerte !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
  #8 (permalink)  
Antiguo 15/06/2011, 14:33
 
Fecha de Ingreso: abril-2011
Ubicación: lima
Mensajes: 134
Antigüedad: 12 años, 11 meses
Puntos: 3
Respuesta: apariencia en java

aqui esta el codigo que hice


Código:
package javaapplication1;

import org.jvnet.substance.SubstanceLookAndFeel;

public class JavaApplication1 {


public static void main(String[] args) {
principal.setDefaultLookAndFeelDecorated(true);
SubstanceLookAndFeel.setSkin("org.jvnet.substance.skin.CremeSkin");
principal p= new principal();
p.setVisible(true);
}
  #9 (permalink)  
Antiguo 15/06/2011, 15:26
Avatar de jhonmelguizo  
Fecha de Ingreso: enero-2008
Ubicación: Medellín - Colombia
Mensajes: 264
Antigüedad: 16 años, 2 meses
Puntos: 6
De acuerdo Respuesta: apariencia en java

Hola Amigo, creo que tienes un error y es que estáis utilizando el objeto sin tener una instancia en memoria, prueba esto:

Código JAVA:
Ver original
  1. package javaapplication1;
  2.  
  3. import org.jvnet.substance.SubstanceLookAndFeel;
  4.  
  5. public class JavaApplication1 {
  6.  
  7.  
  8. public static void main(String[] args) {
  9. principal p= new principal();
  10. p.setDefaultLookAndFeelDecorated(true);
  11. SubstanceLookAndFeel.setSkin("org.jvnet.substance.skin.CremeSkin");
  12. p.setVisible(true);
  13. }

¿principal qué tipo de objeto es?

Saludos...
__________________
¡No competimos, compartimos!...
  #10 (permalink)  
Antiguo 15/06/2011, 17:04
 
Fecha de Ingreso: abril-2011
Ubicación: lima
Mensajes: 134
Antigüedad: 12 años, 11 meses
Puntos: 3
Respuesta: apariencia en java

principal es un jframe, y ya intente en crear una instancia como dices pero de ingual forma no se muestra el form y sale un monton de errores...
  #11 (permalink)  
Antiguo 16/06/2011, 06:50
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 5 meses
Puntos: 454
Respuesta: apariencia en java

Hola:

Este error

org.jvnet.substance.api.UiThreadingViolationExcept ion: Component creation must be done on Event Dispatch Thread

significa lo siguiente. En java hay un hilo (Event Dispatch Thread) que es el encargado de dibujar las ventanas. El look and feel por defecto de java no es muy exigente y permite que hagas cosas en las ventanas fuera de ese hilo, en cualquier parte de tu código. Sin embargo, el look and feel de substance es más exigente y obliga a que cualquier modificación en la ventana se haga a través de ese hilo, haciendo saltar esa excepción si no es así.

Si sigues mirando las líneas de la excepción, el trozo de código tuyo que intenta hacer algo con la ventana fuera de ese hilo especial es el constructor de principal.java

at javaapplication1.principal.<init>(principal.java:2 0)
at javaapplication1.JavaApplication1.main(JavaApplica tion1.java:21)
UIDefaults.getUI() failed: createUI() failed for javax.swing.JPanel[,0,0,0x0,invalid,layout=java.awt.FlowLayout,alignm entX=0.0,alignmentY=0.0,border=,flags=9,maximumSiz e=,minimumSize=,preferredSize=] java.lang.reflect.InvocationTargetException
java.lang.Error

lo más probable es que estés intentando crear o hacer visible la ventana (habría que ver el código del constructor). Prueba a meter esa llamada en el hilo EDT, así

Código java:
Ver original
  1. SwingUtilities.invokeLater(new Runnable(){
  2.    public void run() {
  3.        // aqui cualquier cosa que afecte a la ventana, por ejemplo, el setvisible().
  4.    }
  5. });

Si no quieres complicarte con esto, mira a ver otro look and feel que no sea tan exigente.

Se bueno.
__________________
Apuntes Java
Wiki de Programación

Etiquetas: apariencia
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:11.