Я предполагаю, что это Swing Tree. Этого можно добиться, используя компонент CustomRenderer или интерфейс TreeSelectionListener.
Эта ссылка содержит учебник для расширенного примера того, как изменять значки, фоны и т. Д. Вам нужна гораздо более простая версия, чем эта.
Код, который вас заинтересует:
public Component getTreeCellRendererComponent( JTree tree,
Object value, boolean bSelected, boolean bExpanded,
boolean bLeaf, int iRow, boolean bHasFocus )
{
// Find out which node we are rendering and get its text
DefaultMutableTreeNode node = (DefaultMutableTreeNode)value;
String labelText = (String)node.getUserObject();
this.bSelected = bSelected;
// Set the correct foreground color
if( !bSelected )
setForeground( Color.black );
else
setForeground( Color.white );
....
}