Synth の Look およびある程度の Feel を、コンポーネント固有のプロパティーによりカスタマイズできます。これらのプロパティーには SynthStyle#get からアクセスします。これらのプロパティーを Synth 構成ファイルで指定する方法などについては、Synth のファイル形式を参照してください。
このファイルは、各値が取るべき予想されるクラス型を指定します。不正な型を指定した場合の動作は指定されていません。通常は ClassCastException
がスローされますが、実装に固有なものとなります。
ArrowButton は、矢印を描画する JButton の特殊な型です。通常は ArrowButton は直接作成されず、一部の Component が ArrowButton を作成して矢印付きのボタンを描画します。ArrowButton を使用するコンポーネントは JComboBox、JScrollBar、および JSplitPane (ディバイダのボタン用) です。Button プロパティーに加えて ArrowButton は次のプロパティーをサポートしています。
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
ArrowButton.size | Integer | 16 | 矢印ボタンの適切なサイズ。 |
JButton は TEXT_FOREGROUND ColorType を使用してテキストをペイントします。Button プロパティーに加えて JButton は次のプロパティーをサポートしています。
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
Button.defaultButtonFollowsFocus | Boolean | true | デフォルトの JButton が、フォーカスを取得しているボタンに変わるかどうか。 |
JCheckBox は TEXT_FOREGROUND ColorType を使用してテキストをペイントします。Button プロパティーに加えて JCheckBox は次のプロパティーをサポートしています。
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
CheckBox.icon | Icon | null | チェックを描画するために使用するアイコン。 |
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 | エディタ。 |
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
ComboBox.showPopupOnNavigation | Boolean | false | キーボードを使用してナビゲート中に JPopupMenu を表示するべきかどうか。 |
プロパティー | 予想される型 |
デフォルト値 |
説明 |
---|---|---|---|
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 |
表示モードの選択用のポップアップメニューを表示するボタンが使用するアイコン。 |
プロパティー |
予想される型 |
デフォルト値 |
説明 |
---|---|---|---|
InternalFrame.icon |
Icon | null |
内部フレームのシステムアイコン を表すために描画されるアイコン。 押すと システムメニューが表示されます。 |
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 はレンダラの名前を List.renderer に設定します。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 クラス (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 は複合コンポーネントであり、多数の子コンポーネントで構成される場合があります。子コンポーネントは OptionPane.button、OptionPane.label、OptionPane.comboBox、OptionPane.scrollPane、OptionPane.list、OptionPane.textField、OptionPane.iconLabel です。
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
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 に使用するアイコン |
プロパティー | 予想される型 |
デフォルト値 |
説明 |
---|---|---|---|
ProgressBar.repaintInterval |
Integer |
50 |
不確定進捗バーを再ペイントする間隔のミリ秒数。 |
ProgressBar.cycleTime |
Integer |
3000 |
進捗バーが不確定のときに、1 フレームあたりのバウンシング ボックスの移動距離を決定するために使用するミリ秒数。 |
JRadioButton は TEXT_FOREGROUND ColorType を使用してテキストをペイントします。Button プロパティーに加えて JRadioButton は次のプロパティーをサポートしています。
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
RadioButton.icon | Icon | null | ラジオインジケータを描画するために使用するアイコン。 |
JScrollBar は、次の子 Component で構成される複合コンポーネントです。
名前 | 型 | 説明 |
---|---|---|
ScrollBar.button | SynthArrowButton | 増分ボタンと減分ボタンを識別します。 |
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
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 は、JViewport の周囲に Border を設定するメソッドを提供するという点で特殊です (JViewport の setBorder
からは IllegalArgumentException がスローされます)。これに対応するため、キー ScrollPane.viewportBorderInsets
のインセットを使用する特別なボーダーが、JScrollPane
にインストールされています。SynthPainter
のメソッド paintViewportBorder
は、ビューポート
のボーダーをペイントするために呼び出されます。
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
ScrollPane.viewportBorderInsets | Insets | null | ビューポート Border の Insets。 |
JSplitPane は 1 つのディバイダ、および setOneTouchExpandable(true) が呼び出された場合には 2 つのボタンを含む複合コンポーネントです。この 2 つのボタンの名前は SplitPaneDivider.leftOneTouchButton と SplitPaneDivider.rightOneTouchButton です。
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
SplitPane.centerOneTouchButtons | Boolean | true | true の場合は、ワンタッチボタンがディバイダの中央に配置されます。 |
SplitPane.oneTouchButtonOffset | Integer | 2 | ワンタッチボタン間の距離。 |
SplitPane.oneTouchButtonSize | Integer | 6 | ワンタッチボタンの作成サイズ。 |
SplitPane.oneTouchExpandable | Boolean | null | null でない場合、この値は setOneTouchExpandable に渡されます。 |
SplitPane.size | Integer | 6 | ディバイダのサイズ |
プロパティー |
予想される型 |
デフォルト値 |
説明 |
---|---|---|---|
Slider.thumbWidth |
Integer |
30 |
スライダのサムの幅 |
Slider.thumbHeight |
Integer |
14 |
スライダのサムの高さ |
Slider.trackBorder |
Integer |
1 |
トラックのボーダーの幅 |
Slider.paintValue |
Boolean |
true |
スライダの現在の値をペイントするかどうか。 |
プロパティー | 予想される型 |
デフォルト値 |
説明 |
---|---|---|---|
TabbedPane.tabRunOverlay |
Integer |
0 |
行が複数存在する場合にタブをオーバーラップするピクセルの数。 |
TabbedPane.textIconGap |
Integer |
0 |
タブのアイコンとテキストの間に追加されるパディング。テキストやアイコンがない場合、この値は使用されません。 |
TabbedPane.selectedTabPadInsets |
Insets |
空の Insets (0, 0, 0, 0) |
選択したタブに追加される追加インセット。 |
TabbedPane.selectionFollowsFocus |
Boolean |
true |
true の場合、ユーザーがマウスでタブをナビゲートすると、タブペインの選択が変わります。 |
JTable はレンダラの名前を Table.cellRenderer に設定します。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 はレンダラの名前を Tree.renderer に設定し、エディタの名前は Tree.cellEditor になります。
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
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 は TEXT_FOREGROUND ColorType を使用してテキストをペイントします。Button プロパティーに加えて JToggleButton は次のプロパティーをサポートしています。
プロパティー | 予想される型 | デフォルト値 | 説明 |
---|---|---|---|
ToggleButton.icon | Icon | null | ラジオインジケータを描画するために使用するアイコン。 |
各 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 のいずれかです。