2011-07-29 82 views
5

Tengo un JPanel con JButton, JTextField y una JTable, y la tecla TAB atraviesa estos componentes como se esperaba con una pequeña caja negra dibujada alrededor del componente (o celda en caso de la JTable) que tiene foco. ¿Cómo puedo cambiar el color del indicador de enfoque de la caja negra?Cambie el color del indicador de Java Swing Component Focus

Respuesta

3

El aspecto de la selección está bajo el control del delegado de IU de cada componente, discutido en How to Set the Look and Feel.

Como ejemplo concreto, en cierta L & Fs, puede anular el valor por defecto cuando el programa se pone en marcha:

UIManager.put("Button.focus", Color.red); 
+0

Gracias, que me daba un paso adelante. Lo que estoy tratando de averiguar es por qué algunas JTables en una aplicación grande tienen el indicador de enfoque y otras no. Utilicé: UIManager.put ("Table.focusCellHighlightBorder", nuevo BorderUIResource (nuevo LineBorder (nuevo Color (255,0,0))); Y esos JTables con los indicadores de enfoque cambiados a rojo, pero todavía no veo el indicador de enfoque en todas las JTables. ¿Alguna idea de por qué una celda en una JTable no mostraría el indicador de enfoque? – splatek

+1

@splatek, pero ese tema para una nueva pregunta, con su código ... http://www.java2s.com/Code/Java/ Swing-JFC/CatalogSwing-JFC.htm – mKorbel

+0

@mKorbel es correcto. Aquí hay un [ejemplo] (http://stackoverflow.com/questions/6873665/jtable-row-selection-backpage-problem/6874437#6874437) que funciona con su borde; podría ser un buen [sscce] (http://sscce.org/). También podría buscar una configuración de borde 'nulo' – trashgod

Cuestiones relacionadas