コンポーネント固有のプロパティー

Synth の Look およびある程度の Feel を、コンポーネント固有のプロパティーによりカスタマイズできます。これらのプロパティーには SynthStyle#get からアクセスします。これらのプロパティーを Synth 構成ファイルで指定する方法などについては、Synth のファイル形式を参照してください。

このファイルは、各値が取るべき予想されるクラス型を指定します。不正な型を指定した場合の動作は指定されていません。通常は ClassCastException がスローされますが、実装に固有なものとなります。

ArrowButton

ArrowButton は、矢印を描画する JButton の特殊な型です。通常は ArrowButton は直接作成されず、一部の Component が ArrowButton を作成して矢印付きのボタンを描画します。ArrowButton を使用するコンポーネントは JComboBox、JScrollBar、および JSplitPane (ディバイダのボタン用) です。Button プロパティーに加えて ArrowButton は次のプロパティーをサポートしています。

ArrowButton 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
ArrowButton.size Integer 16 矢印ボタンの適切なサイズ。

JButton

JButton は TEXT_FOREGROUND ColorType を使用してテキストをペイントします。Button プロパティーに加えて JButton は次のプロパティーをサポートしています。

JButton 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
Button.defaultButtonFollowsFocus Boolean true デフォルトの JButton が、フォーカスを取得しているボタンに変わるかどうか。

JCheckBox

JCheckBox は TEXT_FOREGROUND ColorType を使用してテキストをペイントします。Button プロパティーに加えて JCheckBox は次のプロパティーをサポートしています。

JCheckBox 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
CheckBox.icon Icon null チェックを描画するために使用するアイコン。

JComboBox

JComboBox は、次の子 Component で構成される複合コンポーネントです。

名前 説明
ComboBox.arrowButton SynthArrowButton ドロップダウンインジケータを描画します。
ComboBox.list JList 値を描画するために使用する JList。
ComboBox.listRenderer Component JComboBox の JList に使用されるレンダラ。
ComboBox.popup JPopupMenu JComboBox の ComboBox.list の表示に使用される JPopupMenu。
ComboBox.renderer Component JComboBox に使用されるレンダラ。これは、レンダラが UIResource である場合のみ設定されます。
ComboBox.scrollPane JScrollPane JList を含む JScrollPane。
ComboBox.textField JTextField エディタ。

JComboBox 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
ComboBox.showPopupOnNavigation Boolean false キーボードを使用してナビゲート中に JPopupMenu を表示するべきかどうか。

JFileChooser

JFileChooser 固有のプロパティー
プロパティー 予想される型
デフォルト値
説明
FileChooser.cancelIcon
Icon
null
ファイルチューザの取消しボタンに表示するアイコン。
FileChooser.okIcon
Icon
null
ファイルチューザの OK ボタンに表示するアイコン。
FileView.directoryIcon
Icon
null
ディレクトリに使用するアイコン。
FileView.fileIcon
Icon
null
ファイルに使用するアイコン。
FileView.computerIcon
Icon
null
コンピュータを表すディレクトリに使用するアイコン。すべてのプラットフォームがこのアイコンを使用するわけではありません。
FileView.hardDriveIcon
Icon
null
ハードドライブのルートを表すために使用するアイコン。たとえば、Windows 上では C ドライブを表示するときに使用されます。
FileView.floppyDriveIcon
Icon
null
フロッピーディスクを表すために使用するアイコン。
FileChooser.newFolderIcon
Icon
null
新しいフォルダを作成するボタンが使用するアイコン。
FileChooser.upFolderIcon
Icon
null
親フォルダにナビゲートするボタンが使用するアイコン。
FileChooser.homeFolderIcon
Icon
null
現在のユーザーのホームディレクトリにナビゲートするボタンが使用するアイコン。
FileChooser.detailsViewIcon
Icon
null
詳細ファイルリスト表示を切り替えるボタンが使用するアイコン。
FileChooser.listViewIcon
Icon
null
各ファイルとディレクトリのアイコンと名前のみを表示する通常ファイルリスト表示を切り替えるボタンが使用するアイコン。
FileChooser.viewMenuIcon
Icon
null
表示モードの選択用のポップアップメニューを表示するボタンが使用するアイコン。

JInternalFrame

JInternalFrame 固有のプロパティー
プロパティー
予想される型
デフォルト値
説明
InternalFrame.icon
Icon null
内部フレームのシステムアイコン
を表すために描画されるアイコン。 押すと
システムメニューが表示されます。

JInternalFrameTitlePane

JInternalFrameTitlePane は、フレーム内に存在する制御バーに類似した、内部フレームの最上部に位置する制御バーです。

JInternalFrameTitlePane 固有のプロパティー
プロパティー
予想される型
デフォルト値
説明
InternalFrameTitlePane.maximizeIcon
Icon null
内部フレームを最大化する機能を示すために描画されるアイコン。
InternalFrameTitlePane.minimizeIcon
Icon null
内部フレームを以前の状態に復元する機能を示すために描画されるアイコン。
InternalFrameTitlePane.iconifyIcon
Icon null
内部フレームを最小化する機能を示すために描画されるアイコン。
InternalFrameTitlePane.closeIcon
Icon null
内部フレームを閉じる機能を示すために描画されるアイコン。
InternalFrameTitlePane.titleSpacing
Integer 2 タイトルペインのボタンとタイトルの間のスペース。
InternalFrameTitlePane.buttonSpacing
Integer 2 タイトルペインのボタン間のスペース。
InternalFrameTitlePane.maxFrameIconSize
Dimension 16x16 タイトルペインに描画されるフレームアイコンの最大サイズ。アイコンがこのサイズより大きい場合は縮小されます。
InternalFrameTitlePane.titleAlignment
leading|trailing|center leading タイトルの配置方法。コンポーネント方向が左から右の場合は leading が左で trailing が右です。コンポーネント方向が右から左の場合は leading が右で trailing が左です。

JList

JList はレンダラの名前を List.renderer に設定します。JList は次のプロパティーをサポートしています。

JList 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
List.rendererUseListColors Boolean true true の場合、レンダラの状態は更新されず、テキストの色は JList の getSelectionBackground および getSelectionForeground メソッドから取得されます。false の場合、レンダラの状態が更新され、色は代わりに Style から取得されます。
List.rendererUseUIBorder Boolean true true の場合、渡されたボーダーに関係なくレンダラの setBorder は成功します。それ以外の場合は、レンダラの setBorder は Synth Border の場合にのみ成功します。
List.cellHeight Integer -1 JList のセルの高さ。-1 の場合、setFixedCellHeight は呼び出されません。

Menu プロパティー

すべての Menu クラス (JCheckBoxMenuItem、JMenu、JMenuItem、および JRadioButtonMenuItem) は、同じプロパティーセットをサポートして同様に動作します。各コンポーネントは、2 つの Region (コンポーネントに固有の Region と Region.MENU_ITEM_ACCELERATOR) で構成されます。MENU_ITEM_ACCELERATOR はアクセラレータのペイントに使用されます。両方の Region は TEXT_FOREGROUND ColorType を使用してテキストをペイントします。次のプロパティーセットがサポートされています。

プロパティー 予想される型 デフォルト値 説明
prefix.acceleratorDelimiter String + 修飾子の説明とキーの間の文字セパレータ (たとえば、Ctrl <acceleratorDelimiter> X)。
prefix.arrowIcon Icon null テキストの右側に描画されるアイコン (または ComponentOrientation が右から左の場合はテキストの左側)。これは通常、JMenu に対してのみ定義されます。
prefix.checkIcon Icon null テキストの左側に描画されるアイコン (または ComponentOrientation が右から左の場合はテキストの右側)。これは通常、JCheckBoxMenuItem および JRadioButtonMenuItem に対してのみ定義され、チェックボタンまたはラジオボタンを提供します。
prefix.margin Insets 空の Insets (0, 0, 0, 0) JMenuItem のマージン。マージンの使用方法の詳細については javax.swing.AbstractButton#setMargin(java.awt.Insets) の javadoc を参照してください。
prefix.textIconGap Integer 4 アイコンとテキストの間のパディング。この使用方法の詳細については javax.swing.AbstractButton#setIconTextGap(int) の javadoc を参照してください。

Prefix は CheckBoxMenuItem、Menu、MenuItem、または RadioButtonMenuItem のいずれかです。

JMenu は次のプロパティーもサポートしています。

プロパティー 予想される型 デフォルト値 説明
Menu.delay Integer 200 メニューを表示するまでの遅延を設定します。
Menu.shortcutKeys int[] KeyEvent.ALT_MASK ショートカットキーに使用する KeyEvent 修飾子の配列。

JOptionPane

JOptionPane は複合コンポーネントであり、多数の子コンポーネントで構成される場合があります。子コンポーネントは OptionPane.button、OptionPane.label、OptionPane.comboBox、OptionPane.scrollPane、OptionPane.list、OptionPane.textField、OptionPane.iconLabel です。

JOptionPane 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
OptionPane.buttonAreaBorder Border null ボタン領域の周囲のボーダー。
OptionPane.buttonClickThreshhold Integer 0 作成されたボタンの setMultiClickThreshhold に渡されます。
OptionPane.buttonOrientation Integer SwingConstants.CENTER ボタンのレイアウト方法で、SwingConstants.LEFT、SwingConstants.RIGHT、または SwingConstants.CENTER のいずれか (右から左のロケールの場合は反転される)。
OptionPane.buttonPadding Integer 6 ボタン間のスペースの量。
OptionPane.cancelIcon Icon null 取消しボタンのアイコン。
OptionPane.errorIcon Icon null ERROR_MESSAGE に使用するアイコン。
OptionPane.informationIcon Icon null INFORMATION_MESSAGE に使用するアイコン。
OptionPane.isYesLast Boolean false true の場合、「はい」ボタンがその他のボタンの前に配置され、それ以外の場合はその他のボタンの後に配置されます。
OptionPane.questionIcon Icon null エラー QUESTION_MESSAGE に使用するアイコン。
OptionPane.minimumSize Dimension 262x90 JOptionPane の最小サイズ。
OptionPane.noIcon Icon null 「いいえ」ボタンのアイコン。
OptionPane.okIcon Icon null 「OK」ボタンのアイコン。
OptionPane.sameSizeButtons Boolean true すべてのボタンを同じサイズにするべきかどうか。
OptionPane.separatorPadding Integer 6 メッセージ領域とセパレータの間のパディング量。
OptionPane.yesIcon Icon null 「はい」ボタンのアイコン。
OptionPane.warningIcon Icon null エラー WARNING_MESSAGE に使用するアイコン

JProgressBar

JProgressBar 固有のプロパティー
プロパティー 予想される型
デフォルト値
説明
ProgressBar.repaintInterval
Integer
50
不確定進捗バーを再ペイントする間隔のミリ秒数。
ProgressBar.cycleTime
Integer
3000
進捗バーが不確定のときに、1 フレームあたりのバウンシング
ボックスの移動距離を決定するために使用するミリ秒数。

JRadioButton

JRadioButton は TEXT_FOREGROUND ColorType を使用してテキストをペイントします。Button プロパティーに加えて JRadioButton は次のプロパティーをサポートしています。

JRadioButton 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
RadioButton.icon Icon null ラジオインジケータを描画するために使用するアイコン。

JScrollBar

JScrollBar は、次の子 Component で構成される複合コンポーネントです。

名前 説明
ScrollBar.button SynthArrowButton 増分ボタンと減分ボタンを識別します。

JScrollBar 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
ScrollBar.allowsAbsolutePositioning Boolean false true の場合、トラック内でマウスを中クリックすると、トラックの位置がマウスの位置に設定されます。
ScrollBar.maximumThumbSize Dimension 4096x4096 サムの最大サイズ。
ScrollBar.minimumThumbSize Dimension ScrollBar.thumbHeight から派生されます サムの最小サイズ。これを指定しない場合、サムの最小サイズは、スクロールバーの反対軸の方向では ScrollBar.thumbHeight にスクロールバーのインセットを加えた値、もう一方の軸の方向では 7 です。たとえば、スクロールバーの Insets を指定しておらず、スクロールバーの方向が垂直の場合、最小のサムサイズの幅は ScrollBar.thumbHeight で、高さは 7 です。
ScrollBar.squareButtons Boolean false true の場合、スクロールバーボタンの幅と高さは等しくなります。
ScrollBar.thumbHeight Integer 14 スクロールバーの方向が水平の場合は適切な高さ、またはスクロールバーの方向が垂直の場合は適切な幅。

セパレータ

すべてのセパレータクラス (JSeparator、JPopupMenu.Separator、および JToolBar.Separator) は同じプロパティーを使用します。

プロパティー 予想される型 デフォルト値 説明
Separator.thickness Integer 2 垂直方向に整列したセパレータの場合は適切な幅、または水平方向に整列したセパレータの場合は適切な高さ。結果として得られる適切なサイズには Insets が含まれます。

また、JToolBar.Separator は次のプロパティーもサポートします。

プロパティー 予想される型 デフォルト値 説明
ToolBar.separatorSize Dimension null この値は javax.swing.JToolBar$Separator#setSeparatorSize(java.awt.Dimension) メソッドに渡されます。指定しない場合、setSeparatorSize は呼び出されません。

JScrollPane

JScrollPane は、JViewport の周囲に Border を設定するメソッドを提供するという点で特殊です (JViewport の setBorder からは IllegalArgumentException がスローされます)。これに対応するため、キー ScrollPane.viewportBorderInsets のインセットを使用する特別なボーダーが、JScrollPane にインストールされています。SynthPainter のメソッド paintViewportBorder は、ビューポートのボーダーをペイントするために呼び出されます。

JScrollPane 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
ScrollPane.viewportBorderInsets Insets null ビューポート Border の Insets。

JSplitPane

JSplitPane は 1 つのディバイダ、および setOneTouchExpandable(true) が呼び出された場合には 2 つのボタンを含む複合コンポーネントです。この 2 つのボタンの名前は SplitPaneDivider.leftOneTouchButton と SplitPaneDivider.rightOneTouchButton です。

JSplitPane 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
SplitPane.centerOneTouchButtons Boolean true true の場合は、ワンタッチボタンがディバイダの中央に配置されます。
SplitPane.oneTouchButtonOffset Integer 2 ワンタッチボタン間の距離。
SplitPane.oneTouchButtonSize Integer 6 ワンタッチボタンの作成サイズ。
SplitPane.oneTouchExpandable Boolean null null でない場合、この値は setOneTouchExpandable に渡されます。
SplitPane.size Integer 6 ディバイダのサイズ

JSlider

JSlider 固有のプロパティー
プロパティー
予想される型
デフォルト値
説明
Slider.thumbWidth
Integer
30
スライダのサムの幅
Slider.thumbHeight
Integer
14
スライダのサムの高さ
Slider.trackBorder
Integer
1
トラックのボーダーの幅
Slider.paintValue
Boolean
true
スライダの現在の値をペイントするかどうか。


JTabbedPane

JTabbedPane 固有のプロパティー
プロパティー 予想される型
デフォルト値
説明
TabbedPane.tabRunOverlay
Integer
0
行が複数存在する場合にタブをオーバーラップするピクセルの数。
TabbedPane.textIconGap
Integer
0
タブのアイコンとテキストの間に追加されるパディング。テキストやアイコンがない場合、この値は使用されません。
TabbedPane.selectedTabPadInsets
Insets
空の Insets (0, 0, 0, 0)
選択したタブに追加される追加インセット。
TabbedPane.selectionFollowsFocus
Boolean
true
true の場合、ユーザーがマウスでタブをナビゲートすると、タブペインの選択が変わります。

JTable

JTable はレンダラの名前を Table.cellRenderer に設定します。JTable は次のプロパティーをサポートします。

JTable 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
Table.gridColor Color null グリッドに使用する色。null の場合、スタイルの前景色が使用されます。
Table.rendererUseTableColors Boolean true true の場合、レンダラの状態は更新されず、テキストの色は JTable の getSelectionBackground および getSelectionForeground メソッドから取得されます。false の場合、レンダラの状態が更新され、色は代わりに Style から取得されます。
Table.rendererUseUIBorder Boolean true true の場合、渡されたボーダーに関係なくレンダラの setBorder は成功します。それ以外の場合は、レンダラの setBorder は Synth Border の場合にのみ成功します。
Table.rowHeight Integer -1 -1 ではない場合、JTable 上で setRowHeight が呼び出されます。

JTree

JTree はレンダラの名前を Tree.renderer に設定し、エディタの名前は Tree.cellEditor になります。

JTree 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
Tree.collapsedIcon Icon null ノードが折りたたまれている場合に使用するアイコン。
Tree.drawHorizontalLines Boolean true true の場合、ノードにはノードとその親の先端を接続する水平線が描画されます。
Tree.drawVerticalLines Boolean true true の場合、展開されたノードから下方向に垂直線が描画されます。
Tree.expandedIcon Icon null ノードが展開されている場合に使用するアイコン。
Tree.leftChildIndent Integer 0 これに Tree.rightChildIndent を加えたものが、ノードの親からノードを y 軸に沿ってオフセットする合計スペース。
Tree.rightChildIndent Integer 0 これに Tree.leftChildIndent を加えたものが、ノードの親からノードを y 軸に沿ってオフセットする合計スペース。
Tree.rowHeight Integer -1 Tree の行の高さ。
Tree.scrollsHorizontallyAndVertically Boolean false false の場合、セルをすべて収めるためにスクロールが生じる必要があるときに垂直軸に沿ってのみスクロールが生じ、true の場合、スクロールが水平軸と垂直軸に沿って生じることがあります。
Tree.scrollsOnExpand Boolean true ノードが展開された場合に JTree がスクロールするべきかどうか。
Tree.linesStyle String ツリー内の線のスタイル。Synth は実線 (空の値) と破線 (「dashed」値) をサポートしています。新しい SynthGraphicsUtils を作成してツリーにバインドすることにより、新しいスタイルを追加できます。

JToggleButton

JToggleButton は TEXT_FOREGROUND ColorType を使用してテキストをペイントします。Button プロパティーに加えて JToggleButton は次のプロパティーをサポートしています。

JToggleButton 固有のプロパティー
プロパティー 予想される型 デフォルト値 説明
ToggleButton.icon Icon null ラジオインジケータを描画するために使用するアイコン。

Button プロパティー

各 Button クラス (JButton、JCheckBox、JRadioButton、JToggleButton、および SynthArrowButton) は同様のプロパティーセットをサポートしています。これらのプロパティーは次のとおりです。

プロパティー 予想される型 デフォルト値 説明
prefix.contentAreaFilled Integer true この使用方法の詳細については javax.swing.AbstractButton#contentAreaFilled(boolean) の javadoc を参照してください。このプロパティーが適切に受け付けられるかどうかは Painter しだいです。
prefix.iconTextGap Integer 指定しない場合、JButton.setIconTextGap は呼び出されません。 アイコンとテキストの間のパディング。この使用方法の詳細については javax.swing.AbstractButton#setIconTextGap(int) の javadoc を参照してください。
prefix.margin Insets 空の Insets (0, 0, 0, 0) JButton のマージン。マージンの使用方法の詳細については javax.swing.AbstractButton#setMargin(java.awt.Insets) の javadoc を参照してください。
prefix.textShiftOffset Integer 0 テキストとアイコンを通常レイアウトされている位置から x 軸と y 軸に沿って移動する量。これは、ボタンが押された状態であり、かつ押された状態のアイコンがない場合にのみ使用されます。

Prefix は Button、CheckBox、RadioButton、または JToggleButton のいずれかです。

テキストプロパティー

プロパティー 予想される型
デフォルト値
説明
prefix.caretForeground
Color
#000000 キャレットの色。
prefix.margin
Insets 空の Insets (0, 0, 0, 0)、
EditorPane および TextPane (3, 3, 3, 3)
テキストコンポーネントのマージン。
prefix.caretBlinkRate
Integer
500
キャレットの点滅間隔を定義するミリ秒数。

Prefix は EditorPane、FormattedTextField、PasswordField、TextArea、TextField、または TextPane のいずれかです。