Table A-1 shows a complete list of the component UI resources (with the resource name and its expected value type) defined by BasicLookAndFeel. Application-wide changes can be made to these properties using UIManager.put( ). For example, the following line would cause all JButtons instantiated after this call to be created with a background color of black:
Alternately, a custom L&F typically defines values for many of these properties in its initComponentDefaults( ) method. In this case, most resource values should be tagged as UIResources. For more information, see Chapter 26.
Table A-1. Swing PLAF resources
Resource name | Type |
AuditoryCues.cuelist | Array of cue names |
AuditoryCues.allAuditoryCues | Array of cue names |
AuditoryCues.noAuditoryCues | Array containing "mute" |
AutitoryCues.playlist | null (override to give cues) |
Button.background | Color |
Button.border | Border |
Button.darkShadow | Color |
Button.font | Font |
Button.focusInputMap | InputMap |
Button.foreground | Color |
Button.highlight | Color |
Button.light | Color |
Button.margin | Insets |
Button.shadow | Color |
Button.textIconGap | Integer |
Button.textShiftOffset | Integer |
CheckBox.background | Color |
CheckBox.border | Border |
CheckBox.focusInputmap | InputMap |
CheckBox.font | Font |
CheckBox.foreground | Color |
CheckBox.icon | Icon |
CheckBox.margin | Insets |
CheckBox.textIconGap | Integer |
CheckBox.textShiftOffset | Integer |
CheckBoxMenuItem.acceleratorFont | Font |
CheckBoxMenuItem.acceleratorForeground | Color |
CheckBoxMenuItem.acceleratorSelectionForeground | Color |
CheckBoxMenuItem.arrowIcon | Icon |
CheckBoxMenuItem.background | Color |
CheckBoxMenuItem.border | Border |
CheckBoxMenuItem.borderPainted | Boolean |
CheckBoxMenuItem.checkIcon | Icon |
CheckBoxMenuItem.commandSound | null |
CheckBoxMenuItem.disabledForeground | Color |
CheckBoxMenuItem.font | Font |
CheckBoxMenuItem.foreground | Color |
CheckBoxMenuItem.margin | Insets |
CheckBoxMenuItem.selectionBackground | Color |
CheckBoxMenuItem.selectionForeground | Color |
ColorChooser.background | Color |
ColorChooser.font | Font |
ColorChooser.foreground | Color |
ColorChooser.rgbRedMnemonic | Integer |
ColorChooser.rgbGreenMnemonic | Integer |
ColorChooser.rgbBlueMnemonic | Integer |
ColorChooser.selectedColorBorder | Border |
ColorChooser.swatchesSwatchSize | Dimension |
ColorChooser.swatchesRecentSwatchSize | Dimension |
ColorChooser.swatchesDefaultRecentColor | Color |
ComboBox.ancestorInputMap | InputMap |
ComboBox.background | Color |
ComboBox.buttonBackground | Color |
ComboBox.buttonDarkShadow | Color |
ComboBox.buttonHighlight | Color |
ComboBox.buttonShadow | Color |
ComboBox.disabledBackground | Color |
ComboBox.disabledForeground | Color |
ComboBox.font | Font |
ComboBox.foreground | Color |
ComboBox.selectionBackground | Color |
ComboBox.selectionForeground | Color |
Desktop.ancestorInputMap | InputMap |
Desktop.background | Color |
DesktopIcon.border | Border |
EditorPane.background | Color |
EditorPane.border | Border |
EditorPane.caretBlinkRate | Integer |
EditorPane.caretForeground | Color |
EditorPane.font | Font |
EditorPane.foreground | Color |
EditorPane.inactiveForeground | Color |
EditorPane.keyBindings | JTextComponent.KeyBinding[] |
EditorPane.margin | Insets |
EditorPane.selectionBackground | Color |
EditorPane.selectionForeground | Color |
FileChooser.ancestorInputMap | InputMap |
FileChooser.cancelButtonMnemonic | Integer |
FileChooser.detailsViewIcon | Icon |
FileChooser.directoryOpenButtonMnemonic | Integer |
FileChooser.helpButtonMnemonic | Integer |
FileChooser.homeFolderIcon | Icon |
FileChooser.listViewIcon | Icon |
FileChooser.newFolderIcon | Icon |
FileChooser.openButtonMnemonic | Integer |
FileChooser.saveButtonMnemonic | Integer |
FileChooser.upFolderIcon | Icon |
FileChooser.updateButtonMnemonic | Integer |
FileView.computerIcon | Icon |
FileView.directoryIcon | Icon |
FileView.fileIcon | Icon |
FileView.floppyDriveIcon | Icon |
FileView.hardDriveIcon | Icon |
FormattedTextField.background | Color |
FormattedTextField.border | Border |
FormattedTextField.caretBlinkRate | Integer |
FormattedTextField.caretForeground | Color |
FormattedTextField.focusInputMap | InputMap |
FormattedTextField.font | Font |
FormattedTextField.foreground | Color |
FormattedTextField.inactiveBackground | Color |
FormattedTextField.inactiveForeground | Color |
FormattedTextField.margin | Insets |
FormattedTextField.selectionBackground | Color |
FormattedTextField.selectionForeground | Color |
InternalFrame.activeTitleBackground | Color |
InternalFrame.activeTitleForeground | Color |
InternalFrame.border | Border |
InternalFrame.borderColor | Color |
InternalFrame.borderDarkShadow | Color |
InternalFrame.borderHighlight | Color |
InternalFrame.borderLight | Color |
InternalFrame.borderShadow | Color |
InternalFrame.closeIcon | Icon |
InternalFrame.closeSound | null |
InternalFrame.icon | Icon |
InternalFrame.iconifyIcon | Icon |
InternalFrame.inactiveTitleBackground | Color |
InternalFrame.inactiveTitleForeground | Color |
InternalFrame.maximizeIcon | Icon |
InternalFrame.maximizeSound | null |
InternalFrame.minimizeIcon | Icon |
InternalFrame.minimizeSound | null |
InternalFrame.restoreDownSound | null |
InternalFrame.restoreUpSound | null |
InternalFrame.titleFont | Font |
InternalFrame.windowBindings | Array of key bindings |
Label.background | Color |
Label.border | Border |
Label.disabledForeground | Color |
Label.disabledShadow | Color |
Label.font | Font |
Label.foreground | Color |
List.background | Color |
List.border | Border |
List.cellRenderer | ListCellRenderer |
List.focusCellHighlightBorder | Border |
List.focusInputMap | InputMap |
List.focusInputMap.RightToLeft | InputMap |
List.font | Font |
List.foreground | Color |
List.selectionBackground | Color |
List.selectionForeground | Color |
Menu.acceleratorFont | Font |
Menu.acceleratorForeground | Color |
Menu.acceleratorSelectionForeground | Color |
Menu.arrowIcon | Icon |
Menu.background | Color |
Menu.border | Border |
Menu.borderPainted | Boolean |
Menu.checkIcon | Icon |
Menu.disabledForeground | Color |
Menu.font | Font |
Menu.foreground | Color |
Menu.margin | Insets |
Menu.menuPopupOffsetX | Integer |
Menu.menuPopupOffsetY | Integer |
Menu.selectionBackground | Color |
Menu.selectionForeground | Color |
Menu.shortcutKeys | Integer array of key masks |
Menu.submenuPopupOffsetX | Integer |
Menu.submenuPopupOffsetY | Integer |
MenuBar.background | Color |
MenuBar.border | Border |
MenuBar.font | Font |
MenuBar.foreground | Color |
MenuBar.highlight | Color |
MenuBar.shadow | Color |
MenuBar.windowBindings | Array of key bindings |
MenuItem.acceleratorDelimiter | String |
MenuItem.acceleratorFont | Font |
MenuItem.acceleratorForeground | Color |
MenuItem.acceleratorSelectionForeground | Color |
MenuItem.arrowIcon | Icon |
MenuItem.background | Color |
MenuItem.border | Border |
MenuItem.borderPainted | Boolean |
MenuItem.checkIcon | Icon |
MenuItem.commandSound | null |
MenuItem.disabledForeground | Color |
MenuItem.font | Font |
MenuItem.foreground | Color |
MenuItem.margin | Insets |
MenuItem.selectionBackground | Color |
MenuItem.selectionForeground | Color |
OptionPane.background | Color |
OptionPane.border | Border |
OptionPane.buttonAreaBorder | Border |
OptionPane.buttonClickThreshold | Integer |
OptionPane.errorIcon | Icon |
OptionPane.errorSound | null |
OptionPane.font | Font |
OptionPane.foreground | Color |
OptionPane.informationIcon | Icon |
OptionPane.informationSound | null |
OptionPane.messageAreaBorder | Border |
OptionPane.messageForeground | Color |
OptionPane.minimumSize | Dimension |
OptionPane.questionIcon | Icon |
OptionPane.questionSound | null |
OptionPane.warningIcon | Icon |
OptionPane.warningSound | null |
OptionPane.windowbindings | Array of key bindings |
Panel.background | Color |
Panel.font | Font |
Panel.foreground | Color |
PasswordField.background | Color |
PasswordField.border | Border |
PasswordField.caretBlinkRate | Integer |
PasswordField.caretForeground | Color |
PasswordField.font | Font |
PasswordField.foreground | Color |
PasswordField.inactiveBackground | Color |
PasswordField.inactiveForeground | Color |
PasswordField.keyBindings | JTextComponent.KeyBinding[] |
PasswordField.margin | Insets |
PasswordField.selectionBackground | Color |
PasswordField.selectionForeground | Color |
PopupMenu.background | Color |
PopupMenu.border | Border |
PopupMenu.font | Font |
PopupMenu.foreground | Color |
PopupMenu.popupSound | null |
PopupMenu.selectedWindowInputMapBindings | Array of key bindings |
PopupMenu.selectedWindowInputMapBindings.RightToLeft | Array of key bindings |
ProgressBar.background | Color |
ProgressBar.border | Border |
ProgressBar.cellLength | Integer |
ProgressBar.cellSpacing | Integer |
ProgressBar.cycleTime | Integer |
ProgressBar.font | Font |
ProgressBar.foreground | Color |
ProgressBar.repaintInterval | Integer |
ProgressBar.selectionBackground | Color |
ProgressBar.selectionForeground | Color |
RadioButton.background | Color |
RadioButton.border | Border |
RadioButton.darkShadow | Color |
RadioButton.focusInputMap | InputMap |
RadioButton.font | Font |
RadioButton.foreground | Color |
RadioButton.highlight | Color |
RadioButton.icon | Icon |
RadioButton.light | Color |
RadioButton.margin | Insets |
RadioButton.shadow | Color |
RadioButton.textIconGap | Integer |
RadioButton.textShiftOffset | Integer |
RadioButtonMenuItem.acceleratorFont | Font |
RadioButtonMenuItem.acceleratorForeground | Color |
RadioButtonMenuItem.acceleratorSelectionForeground | Color |
RadioButtonMenuItem.arrowIcon | Icon |
RadioButtonMenuItem.background | Color |
RadioButtonMenuItem.border | Border |
RadioButtonMenuItem.borderPainted | Boolean |
RadioButtonMenuItem.checkIcon | Icon |
RadioButtonMenuItem.commandSound | null |
RadioButtonMenuItem.disabledForeground | Color |
RadioButtonMenuItem.font | Font |
RadioButtonMenuItem.foreground | Color |
RadioButtonMenuItem.margin | Insets |
RadioButtonMenuItem.selectionBackground | Color |
RadioButtonMenuItem.selectionForeground | Color |
RootPane.defaultButtonWindowKeyBindings | Array of key bindings |
ScrollBar.background | Color |
ScrollBar.border | Border |
ScrollBar.focusInputMap | InputMap |
ScrollBar.focusInputMap.RightToLeft | InputMap |
ScrollBar.foreground | Color |
ScrollBar.maximumThumbSize | Dimension |
ScrollBar.minimumThumbSize | Dimension |
ScrollBar.thumb | Color |
ScrollBar.thumbDarkShadow | Color |
ScrollBar.thumbHighlight | Color |
ScrollBar.thumbShadow | Color |
ScrollBar.track | Color |
ScrollBar.trackHighlight | Color |
ScrollBar.width | Integer |
ScrollPane.ancestorInputMap | InputMap |
ScrollPane.background | Color |
ScrollPane.border | Border |
ScrollPane.font | Font |
ScrollPane.foreground | Color |
ScrollPane.viewportBorder | Border |
Separator.background | Color |
Separator.foreground | Color |
Separator.highlight | Color |
Separator.shadow | Color |
Slider.background | Color |
Slider.border | Border |
Slider.focus | Color |
Slider.focusInputMap | InputMap |
Slider.focusInputMap.RightToLeft | InputMap |
Slider.focusInsets | Insets |
Slider.foreground | Color |
Slider.highlight | Color |
Slider.shadow | Color |
Spinner.ancestorInputMap | InputMap |
Spinner.arrowButtonSize | Dimension |
Spinner.background | Color |
Spinner.border | Border |
Spinner.font | Font |
Spinner.foreground | Color |
SplitPane.ancestorInputMap | InputMap |
SplitPane.background | Color |
SplitPane.border | Border |
SplitPane.darkShadow | Color |
SplitPane.dividerSize | Integer |
SplitPane.highlight | Color |
SplitPane.shadow | Color |
SplitPaneDivider.border | Border |
TabbedPane.ancestorInputMap | InputMap |
TabbedPane.background | Color |
TabbedPane.contentBorderInsets | Insets |
TabbedPane.darkShadow | Color |
TabbedPane.focus | Color |
TabbedPane.focusInputmap | InputMap |
TabbedPane.font | Font |
TabbedPane.foreground | Color |
TabbedPane.highlight | Color |
TabbedPane.light | Color |
TabbedPane.selected | null |
TabbedPane.selectedTabPadInsets | Insets |
TabbedPane.shadow | Color |
TabbedPane.tabAreaInsets | Insets |
TabbedPane.tabInsets | Insets |
TabbedPane.tabRunOverlay | Integer |
TabbedPane.textIconGap | Integer |
Table.ancestorInputMap | Inputmap |
Table.ancestorInputMap.RightToLeft | Inputmap |
Table.background | Color |
Table.focusCellBackground | Color |
Table.focusCellForeground | Color |
Table.focusCellHighlightBorder | Border |
Table.font | Font |
Table.foreground | Color |
Table.gridColor | Color |
Table.scrollPaneBorder | Border |
Table.selectionBackground | Color |
Table.selectionForeground | Color |
TableHeader.background | Color |
TableHeader.cellBorder | Border |
TableHeader.font | Font |
TableHeader.foreground | Color |
TextArea.background | Color |
TextArea.border | Border |
TextArea.caretBlinkRate | Integer |
TextArea.caretForeground | Color |
TextArea.font | Font |
TextArea.foreground | Color |
TextArea.inactiveForeground | Color |
TextArea.keyBindings | JTextComponent.KeyBinding[] |
TextArea.margin | Insets |
TextArea.selectionBackground | Color |
TextArea.selectionForeground | Color |
TextField.background | Color |
TextField.border | Border |
TextField.caretBlinkRate | Integer |
TextField.caretForeground | Color |
TextField.darkShadow | Color |
TextField.font | Font |
TextField.foreground | Color |
TextField.highlight | Color |
TextField.inactiveBackground | Color |
TextField.inactiveForeground | Color |
TextField.keyBindings | JTextComponent.KeyBinding[] |
TextField.light | Color |
TextField.margin | Insets |
TextField.selectionBackground | Color |
TextField.selectionForeground | Color |
TextField.shadow | Color |
TextPane.background | Color |
TextPane.border | Border |
Textpane.caretBlinkRate | Integer |
TextPane.caretForeground | Color |
TextPane.font | Font |
TextPane.foreground | Color |
TextPane.inactiveForeground | Color |
TextPane.keyBindings | JTextComponent.KeyBinding[] |
TextPane.margin | Insets |
TextPane.selectionBackground | Color |
TextPane.selectionForeground | Color |
TitledBorder.border | Border |
TitledBorder.font | Font |
TitledBorder.titleColor | Color |
ToggleButton.background | Color |
ToggleButton.border | Border |
ToggleButton.darkShadow | Color |
ToggleButton.focusInputMap | InputMap |
ToggleButton.font | Font |
ToggleButton.foreground | Color |
ToggleButton.highlight | Color |
ToggleButton.light | Color |
ToggleButton.margin | Insets |
ToggleButton.shadow | Color |
ToggleButton.textIconGap | Integer |
ToggleButton.textShiftOffset | Integer |
Toolbar.ancestorInputMap | InputMap |
ToolBar.background | Color |
ToolBar.border | Border |
ToolBar.darkShadow | Color |
ToolBar.dockingBackground | Color |
ToolBar.dockingForeground | Color |
ToolBar.floatingBackground | Color |
ToolBar.floatingForeground | Color |
ToolBar.font | Font |
ToolBar.foreground | Color |
Toolbar.highlight | Color |
Toolbar.light | Color |
ToolBar.separatorSize | Dimension |
ToolBar.shadow | Color |
ToolTip.background | Color |
ToolTip.border | Border |
ToolTip.font | Font |
ToolTip.foreground | Color |
Tree.ancestorInputMap | InputMap |
Tree.background | Color |
Tree.changeSelectionWithFocus | Boolean |
Tree.closedIcon | Icon |
Tree.collapsedIcon | Icon |
Tree.drawsFocusBorderAroundIcon | Boolean |
Tree.editorBorder | Border |
Tree.expandedIcon | Icon |
Tree.focusInputMap | InputMap |
Tree.focusInputMap.RightToLeft | InputMap |
Tree.font | Font |
Tree.foreground | Color |
Tree.hash | Color |
Tree.leafIcon | Icon |
Tree.leftChildIndent | Integer |
Tree.openIcon | Icon |
Tree.rightChildIndent | Integer |
Tree.rowHeight | Integer |
Tree.scrollsOnExpand | Boolean |
Tree.selectionBackground | Color |
Tree.selectionBorderColor | Color |
Tree.selectionForeground | Color |
Tree.textbackground | Color |
Tree.textForeground | Color |
Viewport.background | Color |
Viewport.font | Font |
Viewport.foreground | Color |