コンテンツにスキップ

JLayer

JLayerを使ってJProgressBarの色相を変更する

Section titled “JLayerを使ってJProgressBarの色相を変更する”
JLayerを使ってJProgressBarの色相を変更する

ColorChannelSwapFilter

JLayerを使ってJProgressBarの色相を緑から赤に変更します。

JLayerで指定したコンポーネントへの入力を禁止

Section titled “JLayerで指定したコンポーネントへの入力を禁止”
JLayerで指定したコンポーネントへの入力を禁止

DisableInputLayer

JDK7で導入されたJLayerを利用して指定したコンポーネントへの入力を禁止します。

JLayerを使ってJTabbedPaneのタブの挿入位置を描画する

Section titled “JLayerを使ってJTabbedPaneのタブの挿入位置を描画する”
JLayerを使ってJTabbedPaneのタブの挿入位置を描画する

DnDLayerTabbedPane

JLayerを使って、タブのドラッグ&ドロップでの移動先をJTabbedPane上に描画します。

JLayerを使用して無効時のコンポーネントの文字色を変更する

Section titled “JLayerを使用して無効時のコンポーネントの文字色を変更する”
JLayerを使用して無効時のコンポーネントの文字色を変更する

JLayerDisabledText

JLayerを使用して、JButtonなどのコンポーネントを無効にしたときの文字色を変更します。

JLayerで隣接する別コンポーネント上に縁を描画

Section titled “JLayerで隣接する別コンポーネント上に縁を描画”
JLayerで隣接する別コンポーネント上に縁を描画

OverlapBorderPaintLayer

JLayerを使用して隣接する別コンポーネント上にも縁や影を描画します。

JLayerで子コンポーネントへの入力を制限する

Section titled “JLayerで子コンポーネントへの入力を制限する”
JLayerで子コンポーネントへの入力を制限する

PopupMenuBlockLayer

JLayerを使って、子コンポーネントへのすべての入力を制限します。

JProgressBarの進捗文字列をJLayer上に描画する

Section titled “JProgressBarの進捗文字列をJLayer上に描画する”
JProgressBarの進捗文字列をJLayer上に描画する

ProgressStringLayer

垂直JProgressBarの幅を拡大し、その進捗文字列を回転なしの横組でJLayer上に表示します。

JScrollPane内にある複数Componentを配置したJPanelをJLayerでドラッグスクロール

Section titled “JScrollPane内にある複数Componentを配置したJPanelをJLayerでドラッグスクロール”
JScrollPane内にある複数Componentを配置したJPanelをJLayerでドラッグスクロール

DragScrollLayer

複数のネストしたComponentを配置したJPanelのドラッグイベントを、JScrollPaneをラップしたJLayerで受け取ってスクロール可能にします。

JTabbedPaneの余白に文字列を表示

TabbedPaneWithText

JTabbedPaneのタブエリア右側の余白に文字列を表示します。

JMenuItemの内部にJButtonを配置する

Section titled “JMenuItemの内部にJButtonを配置する”
JMenuItemの内部にJButtonを配置する

ButtonsInMenuItem

JMenuItemの内部に切り取り、コピー、貼り付けを行うJButtonを配置します。

JTextAreaでハイライト付き検索を行う

Section titled “JTextAreaでハイライト付き検索を行う”
JTextAreaでハイライト付き検索を行う

HighlightSearch

JTextArea内の文字列を指定した条件で検索し、一致した文字列をすべてハイライト表示します。

JTabbedPaneの各タブにJButtonを右寄せで追加する

Section titled “JTabbedPaneの各タブにJButtonを右寄せで追加する”
JTabbedPaneの各タブにJButtonを右寄せで追加する

CloseableTabbedPane

JTabbedPaneのタブ上にそれを閉じるためのJButtonをJLayerを使用して右寄せで描画します。

MouseWheelEventを親のJScrollPaneに転送する

Section titled “MouseWheelEventを親のJScrollPaneに転送する”
MouseWheelEventを親のJScrollPaneに転送する

WheelOverNestedScrollPane

JLayerを使って、ネストするJScrollPaneへのMouseWheelEventを転送し、スクロールが継続するように設定します。

JLayerを使用してコンポーネントの並べ替えを行う

Section titled “JLayerを使用してコンポーネントの並べ替えを行う”
JLayerを使用してコンポーネントの並べ替えを行う

ReorderingLayer

JPanel内に配置したコンポーネントの並べ替えで、ドラッグ中のコンポーネントをJLayerで描画します。

ComboBoxEditorにJLayerを設定し入力の妥当性を表示する

Section titled “ComboBoxEditorにJLayerを設定し入力の妥当性を表示する”
ComboBoxEditorにJLayerを設定し入力の妥当性を表示する

ComboBoxEditorVerifier

JComboBoxのComboBoxEditorにJLayerを設定し、その入力が妥当でない場合はアイコンを表示します。

JSplitPaneに追加したコンポーネントをドラッグしてDividerの位置を変更する

Section titled “JSplitPaneに追加したコンポーネントをドラッグしてDividerの位置を変更する”
JSplitPaneに追加したコンポーネントをドラッグしてDividerの位置を変更する

DividerLocationDragLayer

JSplitPaneに追加した子コンポーネントの余白などをドラッグしてDividerの位置を変更可能にするJLayerを設定します。

JTreeのルートノードアイコンのサイズを変更し、その中央に接続線が描画されるように設定する

Section titled “JTreeのルートノードアイコンのサイズを変更し、その中央に接続線が描画されるように設定する”
JTreeのルートノードアイコンのサイズを変更し、その中央に接続線が描画されるように設定する

MiddleXOfRootNodeIcon

JTreeのルートノードアイコンのみ、そのサイズを拡大し、アイコンの中央に垂直の接続線が描画されるように設定します。

JComboBoxの各アイテムやArrowButtonにそれぞれToolTipTextを設定する

Section titled “JComboBoxの各アイテムやArrowButtonにそれぞれToolTipTextを設定する”
JComboBoxの各アイテムやArrowButtonにそれぞれToolTipTextを設定する

ToolTipInComboBox

JComboBoxの各リストアイテムやArrowButtonに、それぞれ異なるToolTipTextを設定します。

JScrollPane上にマウスカーソルが存在する場合のみJScrollBarを表示する

Section titled “JScrollPane上にマウスカーソルが存在する場合のみJScrollBarを表示する”
JScrollPane上にマウスカーソルが存在する場合のみJScrollBarを表示する

ScrollBarOnHover

JScrollPane上にマウスカーソルが存在する場合だけ、縦JScrollBarが表示されるように設定します。

JTabbedPaneでマウスやキー入力によるタブ切替を無効にする

Section titled “JTabbedPaneでマウスやキー入力によるタブ切替を無効にする”
JTabbedPaneでマウスやキー入力によるタブ切替を無効にする

PreventChangingTabsByInput

JTabbedPaneでマウスクリックやキー入力といったユーザ操作イベントによるタブ切替を無効にします。

JSplitPaneのDividerを円形半透明のつまみに変更して中央に配置する

Section titled “JSplitPaneのDividerを円形半透明のつまみに変更して中央に配置する”
JSplitPaneのDividerを円形半透明のつまみに変更して中央に配置する

TranslucentThumbDivider

JSplitPaneの元のDividerを非表示に設定し、代わりにJLayerを使って半透明の円形つまみを作成して中央に配置します。

JTableHeaderの余白にヘッダを描画する

Section titled “JTableHeaderの余白にヘッダを描画する”
JTableHeaderの余白にヘッダを描画する

TableHeaderFiller

JTableHeaderの列幅を自動調整しない場合に発生する余白に疑似ヘッダを描画します。

ComboBoxEditorにJLayerを設定してプレースホルダ文字列を表示する

Section titled “ComboBoxEditorにJLayerを設定してプレースホルダ文字列を表示する”
ComboBoxEditorにJLayerを設定してプレースホルダ文字列を表示する

ComboEditorPlaceholder

JComboBoxのComboBoxEditorにJLayerを設定し、そのテキストが空の場合はプレースホルダ文字列を表示します。

JScrollPane内のコンテンツがJViewportの幅より大きい場合その右端に影を描画する

Section titled “JScrollPane内のコンテンツがJViewportの幅より大きい場合その右端に影を描画する”
JScrollPane内のコンテンツがJViewportの幅より大きい場合その右端に影を描画する

ViewportBorderBounds

JScrollPaneに追加したコンポーネントのコンテンツ幅がJViewportの幅より大きく、水平スクロールバーが表示される状態の場合その右端に影を表示します。

JTableHeaderの列をマウスの右ボタンドラッグで順序変更不可にする

Section titled “JTableHeaderの列をマウスの右ボタンドラッグで順序変更不可にする”
JTableHeaderの列をマウスの右ボタンドラッグで順序変更不可にする

DisableRightButtonReordering

JLayerを使用してJTableHeaderの列をマウスの右ボタンでドラッグしても順序変更不可に設定します。

JTableのセルを斜めに分割する

DiagonallySplitCellCalendar

JTableのセルレンダラーにJLayerで直線を描画して斜め分断セルを表示します。

JLabel内のアイコンにJLayerを使用してバッジを表示する

Section titled “JLabel内のアイコンにJLayerを使用してバッジを表示する”
JLabel内のアイコンにJLayerを使用してバッジを表示する

NotificationBadge

JLabelに設定されたアイコンの上にJLayerを使用してバッジを表示します。

JFrameのタイトルバーに追加したコンポーネントをドラッグ可能にする

Section titled “JFrameのタイトルバーに追加したコンポーネントをドラッグ可能にする”
JFrameのタイトルバーに追加したコンポーネントをドラッグ可能にする

DraggableTitleBarComponents

JFrameに独自のタイトルバーを設定しその内部に追加したコンポーネントをマウスでドラッグ可能に設定します。

JTableの行の高さをマウスドラッグで変更する

Section titled “JTableの行の高さをマウスドラッグで変更する”
JTableの行の高さをマウスドラッグで変更する

ResizeRowHeightByDragging

JLayerを使用してJTableの行の高さをマウスでドラッグして変更可能にします。

JTabbedPaneのタブ領域をマウスドラッグでリサイズする

Section titled “JTabbedPaneのタブ領域をマウスドラッグでリサイズする”
JTabbedPaneのタブ領域をマウスドラッグでリサイズする

ResizeTabAreaByDragging

JTabbedPaneのタブ領域をマウスで選択、ドラッグしてリサイズします。

JScrollBarの下にスクロールロックボタンを配置する

Section titled “JScrollBarの下にスクロールロックボタンを配置する”
JScrollBarの下にスクロールロックボタンを配置する

ScrollLockCornerButton

JScrollPaneから取得した垂直JScrollBarとそれらのスクロールをロックするためのJToggleButtonを別パネルに配置します。

JTableHeaderの角を丸める

RoundedCornerTableHeader

JTableHeaderにその角を丸めるTableCellRendererを設定し、月に応じてその背景色を変更するカレンダーを作成します。

JScrollPaneに先頭領域までのスクロールバックを実行するJButtonを追加する

Section titled “JScrollPaneに先頭領域までのスクロールバックを実行するJButtonを追加する”
JScrollPaneに先頭領域までのスクロールバックを実行するJButtonを追加する

ScrollBackToTopButton

JScrollPaneにJButtonを描画するJLayerを設定し、ここでクリックイベントを取得したら先頭領域までのスクロールバックを実行します。

JSeparatorで段落罫線を描画する

ColumnRules

GridLayoutなどで作成した列の間に罫線としてJSeparatorを描画します。

JInternalFrameのタイトルを右ダブルクリックしても最大化しないよう設定する

Section titled “JInternalFrameのタイトルを右ダブルクリックしても最大化しないよう設定する”
JInternalFrameのタイトルを右ダブルクリックしても最大化しないよう設定する

DisableRightDoubleClickMaximize

JInternalFrameのタイトルバーをマウスの右ボタンでダブルクリックしても最大化しないよう設定します。

CardLayoutで作成したJTabbedPane風コンポーネントのタブエリアに水平JScrollBarを表示する

Section titled “CardLayoutで作成したJTabbedPane風コンポーネントのタブエリアに水平JScrollBarを表示する”
CardLayoutで作成したJTabbedPane風コンポーネントのタブエリアに水平JScrollBarを表示する

TabAreaScrollBar

CardLayoutを使用してJTabbedPane風のコンポーネントを作成し、そのタブエリアに水平JScrollBarを表示してスクロール可能にします。

JScrollPaneの範囲外へのマウスドラッグによるスクロールで半透明の楕円を描画する

Section titled “JScrollPaneの範囲外へのマウスドラッグによるスクロールで半透明の楕円を描画する”
JScrollPaneの範囲外へのマウスドラッグによるスクロールで半透明の楕円を描画する

OverscrollEdgeEffect

JScrollPaneの範囲外にマウスドラッグでスクロールしようとするイベントを取得したら、JLayerを使用してJViewportの端に半透明の楕円を描画しこれ以上移動できないことを表現します。

JInternalFrameのリサイズ中に表示されるアウトラインを点線に変更する

Section titled “JInternalFrameのリサイズ中に表示されるアウトラインを点線に変更する”
JInternalFrameのリサイズ中に表示されるアウトラインを点線に変更する

OutlineDragStroke

JInternalFrameのリサイズ中に表示されるアウトラインを色反転の直線から点線に変更してJLayer上に描画します。

JToolBarの右マウスボタンでのドラッグアウトを無効にする

Section titled “JToolBarの右マウスボタンでのドラッグアウトを無効にする”
JToolBarの右マウスボタンでのドラッグアウトを無効にする

DisableRightButtonFloating

JToolBarのドラッグアウト開始を左マウスボタンでのみ可能になるよう制限します。

JSliderの目盛り表示位置をトラック上部に変更する

Section titled “JSliderの目盛り表示位置をトラック上部に変更する”
JSliderの目盛り表示位置をトラック上部に変更する

SliderTicksPosition

水平JSliderの目盛りをトラック上部に表示し、つまみの矢印も上向きに描画するよう変更します。

JButtonが無効な状態でのhtmlテキスト色を変更する

Section titled “JButtonが無効な状態でのhtmlテキスト色を変更する”
JButtonが無効な状態でのhtmlテキスト色を変更する

ButtonDisabledHtmlText

JButtonが無効な状態でのhtmlテキスト色をデフォルトのグレーではなく半透明にした元のhtmlテキスト色で上書きします。

JPasswordFieldでPINコード入力欄を作成する

Section titled “JPasswordFieldでPINコード入力欄を作成する”
JPasswordFieldでPINコード入力欄を作成する

PinCodeInputField

JPasswordFieldを使用して数字4桁のPINコード入力欄を作成します。

JSliderの最小・最大値を表示するLabelの揃えを変更する

Section titled “JSliderの最小・最大値を表示するLabelの揃えを変更する”
JSliderの最小・最大値を表示するLabelの揃えを変更する

SliderLabelAlignment

JSliderの最小値ラベルを左揃え、最大値ラベルを右揃えで表示するよう設定します。

JTableの水平罫線を描画する位置とその色をソート条件に応じて変更する

Section titled “JTableの水平罫線を描画する位置とその色をソート条件に応じて変更する”
JTableの水平罫線を描画する位置とその色をソート条件に応じて変更する

StandingsTables

JTableで順位表を作成し、上位と下位のグループ分けを表す水平罫線をJLayerを使用して描画するよう設定します。

JTableの行を右クリックで選択して同時にJPopupMenuを開く

Section titled “JTableの行を右クリックで選択して同時にJPopupMenuを開く”
JTableの行を右クリックで選択して同時にJPopupMenuを開く

RightClickRowSelectionAndPopupMenu

JTableの行を右クリックした場合、その選択状態の変更とJPopupMenuの表示を両方実行する方法をテストします。

JTableHeaderのTableColumn間にロールオーバーするSeparatorを追加

Section titled “JTableHeaderのTableColumn間にロールオーバーするSeparatorを追加”
JTableHeaderのTableColumn間にロールオーバーするSeparatorを追加

TableHeaderRolloverSeparator

JTableHeaderの各TableColumn間にロールオーバー時のみ出現するSeparatorをJLayerを使用して描画します。

JToggleButton内に選択状態を同期したJRadioButtonを描画する

Section titled “JToggleButton内に選択状態を同期したJRadioButtonを描画する”
JToggleButton内に選択状態を同期したJRadioButtonを描画する

RadioCard

JTobbleButton内に選択状態を同期したJRadioButtonと複数行テキストを描画してRadioCardを作成します。

JTableの列の境界上に追加挿入カーソルを表示する

Section titled “JTableの列の境界上に追加挿入カーソルを表示する”
JTableの列の境界上に追加挿入カーソルを表示する

InsertTableColumn

JTableの各列の間にマウスを移動したときその境界線上にクリックで新規のTableColumnが挿入可能なカーソルを描画します。

JListに固定ヘッダを実装する

StickyHeaderList

JListの表示領域に存在する行を検索して特定のデータを保持するセルをヘッダとしてJLayer上に固定して描画します。

TableColumnのドラッグによる順序変更が可能な領域を制限する

Section titled “TableColumnのドラッグによる順序変更が可能な領域を制限する”
TableColumnのドラッグによる順序変更が可能な領域を制限する

TableColumnReorderingIcon

JTableHeaderの列順序変更ドラッグが開始可能な領域をTableColumnの上半分に限定し、マウスカーソルの変更とドラッグハンドルアイコンの描画をJLayer上で実行します。

JListのセルがハイライト表示中にのみJButtonを表示する

Section titled “JListのセルがハイライト表示中にのみJButtonを表示する”
JListのセルがハイライト表示中にのみJButtonを表示する

ThreeDotsMenuButton

JListのセルハイライト表示とコンテキストメニュー表示用のJButtonをJLayer上で描画します。

TitledBorderのタイトル背景とボーダーの角を丸める

Section titled “TitledBorderのタイトル背景とボーダーの角を丸める”
TitledBorderのタイトル背景とボーダーの角を丸める

RoundedTitledBorder

TitledBorderのタイトル背景を右下隅を丸めたラウンド矩形で塗りつぶし、ボーダーも四隅を丸めたラウンド矩形で描画します。

TableColumnのソート状態をハイライト描画する

Section titled “TableColumnのソート状態をハイライト描画する”
TableColumnのソート状態をハイライト描画する

SortingHeaderColumnPainter

JTableでソート中のTableColumnの背景色などを変更してハイライト表示するよう設定します。

JTableのセル選択を半透明化して上書き

Section titled “JTableのセル選択を半透明化して上書き”
JTableのセル選択を半透明化して上書き

TranslucentTableCellSelection

JTableのセル選択をJLayer側で描画してセル選択状態を半透明色で上書きとセル選択領域へのフチ設定を実行しています。

JScrollPaneからあふれるJListのアイテムをフェードアウト表示する

Section titled “JScrollPaneからあふれるJListのアイテムをフェードアウト表示する”
JScrollPaneからあふれるJListのアイテムをフェードアウト表示する

ListOverflowWithFadeScroll

JScrollPaneの上下からあふれるJListのリストアイテムが存在する場合、それをフェードアウト効果で表示するよう設定します。

JTabbedPaneの選択タブ切り替えをマウスクリック後に変更する

Section titled “JTabbedPaneの選択タブ切り替えをマウスクリック後に変更する”
JTabbedPaneの選択タブ切り替えをマウスクリック後に変更する

ChangeSelectedTabAfterClicking

JTabbedPaneの選択タブ切り替えをマウスプレスの直後ではなく、クリック完了後に変更します。

JTableのセル選択領域の縁に破線が移動するアニメーションを表示する

Section titled “JTableのセル選択領域の縁に破線が移動するアニメーションを表示する”
JTableのセル選択領域の縁に破線が移動するアニメーションを表示する

DashedBorderAnimationForSelectedCells

JTableのセル選択領域全体の縁に破線フェーズの異なる破線を交互に切り替えることでその移動アニメーションを描画します。

JTabbedPaneのタブ追加位置をハイライト表示する

Section titled “JTabbedPaneのタブ追加位置をハイライト表示する”
JTabbedPaneのタブ追加位置をハイライト表示する

TabOrScrollButtonHighlightAnimation

JTabbedPaneのタブ追加時にそのタブ領域、領域が非表示の場合はスクロールボタンをハイライトするアニメーションで追加位置を知らせるよう設定します。

JMenuに選択状態のハイライトを追加で表示する

Section titled “JMenuに選択状態のハイライトを追加で表示する”
JMenuに選択状態のハイライトを追加で表示する

MenuSelectionIndicator

JMenuBarに追加したトップレベルのJMenuに下線または上線を追加して、選択状態を強調表示します。

JTableに列罫線を描画する

VerticalRulesTable

JTableを中央の列で二分割する二重垂直線を描画します。

JMenuBarに配置したJMenuをドラッグして並べ替える

Section titled “JMenuBarに配置したJMenuをドラッグして並べ替える”
JMenuBarに配置したJMenuをドラッグして並べ替える

DraggableMenu

JMenuBarに配置されたトップレベルJMenuをマウスドラッグで並べ替え可能にします。

JTableで作成したカレンダー上に複数日予定をJLayerで描画する

Section titled “JTableで作成したカレンダー上に複数日予定をJLayerで描画する”
JTableで作成したカレンダー上に複数日予定をJLayerで描画する

CalendarTableWithEventBars

JTableで作成した月のグリッドカレンダーをJLayerでラップして複数日にわたる予定を日付セルを横断するカラーバーで表現します。

JButtonの左右が重なるレイアウトでアバターグループを作成する

Section titled “JButtonの左右が重なるレイアウトでアバターグループを作成する”
JButtonの左右が重なるレイアウトでアバターグループを作成する

Avatars

JButtonに円形の切り抜きアイコンを設定し、これらの左右がデフォルトでは重なり、マウスオーバー時に水平方向に拡大するようレイアウトされたアバターグループを作成します。

JLabelの文字列をシマー効果で装飾する

Section titled “JLabelの文字列をシマー効果で装飾する”
JLabelの文字列をシマー効果で装飾する

ShimmerLabel

JLabelの文字列をLinearGradientPaintで作成した光沢が移動するアニメーション付きで描画します。

JButtonにJLayerを設定して展開・折り畳み可能な分割ボタンを作成する

Section titled “JButtonにJLayerを設定して展開・折り畳み可能な分割ボタンを作成する”
JButtonにJLayerを設定して展開・折り畳み可能な分割ボタンを作成する

ExpandableSplitButton

JButtonに展開・折り畳みアニメーションの開始・終了やクリック領域毎のアクション振り分けを行うJLayerを設定して分割ボタンを作成します。