InicioInfoUIManager: Cambiar colores por defecto de ventanas java

UIManager: Cambiar colores por defecto de ventanas java

Info1/5/2012

UIManager es una clase java que contiene mucha de la información que necesita java para construir los botones, ventanas y demás.
Entre otras cosas, tiene almacenado dentro cuáles son los colores por defecto que tendrá cada uno de los componentes java. El color de fondo de botones, checkbox, pestañas, etc.
Podemos fácilmente cambiar esos colores . El siguiente trocito de código hará que a partir de ese momento todos los botones que instanciemos tengan color blanco
UIManager.put("Button.background", Color.white);
Basta con llamar al método put() y fijar una propiedad "Button.background" con el color que queremos.

Cambiar textos por defecto

También podemos cambiar los textos por defecto de los botones de las ventanas "prefabricadas" como JOptionPane o JFileChooser, por ejemplo, para ponerlos en español
[color=#000000]UIManager.put("OptionPane.yesButtonText","Su00ED");
UIManager.put("OptionPane.noButtonText","No");
UIManager.put("OptionPane.cancelButtonText","Cancelar");
UIManager.put("OptionPane.okButtonText","Aceptar");[/color]

Obtener las propiedades de UIManager

Para cambiar otros colores de otros componentes necesitaremos saber el nombre de la propiedad de ese color y componente en concreto. ¿Cómo sabemos los nombres de las propiedades de UIManager?. En la API de java no aparece una lista de dichas propiedades, pero este pequeño código nos puede ayudar a obtenerlas:
import java.util.Enumeration;
   import javax.swing.UIDefaults;
   import javax.swing.UIManager;
   public class UIManagger{
      public static void main(String arg[]){
         UIDefaults d = UIManager.getDefaults();
         Enumeration<Object> claves = d.keys();
         while (claves.hasMoreElements())
            System.out.println(claves.nextElement());
      }
   }

que nos dará el siguiente listado (java 1.5)
class javax.swing.plaf.basic.BasicPanelUI
javax.swing.plaf.basic.BasicPanelUI
class javax.swing.plaf.metal.MetalRootPaneUI
Button.background
class javax.swing.plaf.metal.MetalButtonUI
javax.swing.plaf.metal.MetalButtonUI
javax.swing.plaf.metal.MetalRootPaneUI
TextPane.font
Label.background
OptionPane.warningDialog.titlePane.shadow
ToolTip.foregroundInactive
ToolBar.separatorSize
TabbedPane.tabAreaInsets
FileView.floppyDriveIcon
RootPane.informationDialogBorder
...

No están todas, que son muchas, muchas.
Datos archivados del Taringa! original
0puntos
76visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

c
colavorador🇦🇷
Usuario
Puntos0
Posts27
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.