クラスLayerUI<V extends Component>

java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.LayerUI<V>
型パラメータ:
V - JLayerのビュー・コンポーネントのスーパー・タイプの1つ
すべての実装されたインタフェース:
Serializable

public class LayerUI<V extends Component> extends ComponentUI implements Serializable
すべてのJLayerのUI委譲の基底クラス。

paint(java.awt.Graphics, javax.swing.JComponent)メソッドはJLayerのペイントを実行し、eventDispatched(AWTEvent, JLayer)メソッドはJLayerまたはサブコンポーネントのいずれかによって生成されたAWTEventに関する通知を受けます。

LayerUIは、LookAndFeelに依存せず、デフォルトではシステムのLookAndFeelが変更されたときに更新されないので、ほかのコンポーネントのUI委譲とは異なります。

LayerUIのサブクラスは、ステートレスにして複数のJLayerによって共有可能にすることも、共有不可能にすることもできます。

導入されたバージョン:
1.7
関連項目:
  • コンストラクタの詳細

    • LayerUI

      public LayerUI()
      LayerUIを構築します。
  • メソッドの詳細

    • paint

      public void paint(Graphics g, JComponent c)
      指定されたコンポーネントをペイントします。 サブクラスは、このメソッドをオーバーライドして、指定されたGraphicsオブジェクトを使ってコンポーネントの内容を描画するべきです。

      デフォルトの実装は渡されたコンポーネントをそのままペイントします。

      オーバーライド:
      paint、クラスComponentUI
      パラメータ:
      g - ペイント対象のGraphicsコンテキスト
      c - ペイントされるコンポーネント
      関連項目:
    • eventDispatched

      public void eventDispatched(AWTEvent e, JLayer<? extends V> l)
      このLayerUIインスタンスへのJLayerそのすべての子孫AWTEventを処理します。

      特定の型のAWTEventを有効にするには、installUI(javax.swing.JComponent)JLayer.setLayerEventMask(long)を呼び出し、その後uninstallUI(javax.swing.JComponent)でレイヤーのイベント・マスクを0に設定します。 デフォルトでは、このメソッドは、指定されたイベント・クラスに対して適切なprocess<event type>Eventメソッドをコールします。

      ノート: イベントは、表示可能なJLayerに対してのみ処理されます。

      パラメータ:
      e - ディスパッチされるイベント
      l - このLayerUIが設定されているレイヤー
      関連項目:
    • processComponentEvent

      protected void processComponentEvent(ComponentEvent e, JLayer<? extends V> l)
      JLayerまたはすべてのそのサブコンポーネントで発生するコンポーネント・イベントを処理します。

      このLayerUIが設定されているJLayerオブジェクトに対してコンポーネント・イベントが有効でないかぎり、このメソッドは呼び出されません。 コンポーネント・イベントは、オーバーライドされたinstallUI(JComponent)メソッドで有効になり、その後、uninstallUI(JComponent)メソッドで無効にする必要があります。

      public void installUI(JComponent c) {
         super.installUI(c);
         JLayer l = (JLayer) c;
         l.setLayerEventMask(AWTEvent.COMPONENT_EVENT_MASK);
      }
      
      public void uninstallUI(JComponent c) {
          super.uninstallUI(c);
          JLayer l = (JLayer) c;
          l.setLayerEventMask(0);
      }
      

      パラメータ:
      e - 処理するComponentEvent
      l - このLayerUIインスタンスが設定されているレイヤー
      関連項目:
    • processFocusEvent

      protected void processFocusEvent(FocusEvent e, JLayer<? extends V> l)
      JLayerまたはすべてのそのサブコンポーネントで発生するフォーカス・イベントを処理します。

      このLayerUIが設定されているJLayerオブジェクトに対してフォーカス・イベントが有効でないかぎり、このメソッドは呼び出されません。 フォーカス・イベントは、オーバーライドされたinstallUI(JComponent)メソッドで有効になり、その後、uninstallUI(JComponent)メソッドで無効にする必要があります。

      public void installUI(JComponent c) {
         super.installUI(c);
         JLayer l = (JLayer) c;
         l.setLayerEventMask(AWTEvent.FOCUS_EVENT_MASK);
      }
      
      public void uninstallUI(JComponent c) {
          super.uninstallUI(c);
          JLayer l = (JLayer) c;
          l.setLayerEventMask(0);
      }
      

      パラメータ:
      e - 処理するFocusEvent
      l - このLayerUIインスタンスが設定されているレイヤー
      関連項目:
    • processKeyEvent

      protected void processKeyEvent(KeyEvent e, JLayer<? extends V> l)
      JLayerまたはすべてのそのサブコンポーネントで発生するキー・イベントを処理します。

      このLayerUIが設定されているJLayerオブジェクトに対してキー・イベントが有効でないかぎり、このメソッドは呼び出されません。 キー・イベントは、オーバーライドされたinstallUI(JComponent)メソッドで有効になり、その後、uninstallUI(JComponent)メソッドで無効にする必要があります。

      public void installUI(JComponent c) {
         super.installUI(c);
         JLayer l = (JLayer) c;
         l.setLayerEventMask(AWTEvent.KEY_EVENT_MASK);
      }
      
      public void uninstallUI(JComponent c) {
          super.uninstallUI(c);
          JLayer l = (JLayer) c;
          l.setLayerEventMask(0);
      }
      

      パラメータ:
      e - 処理するKeyEvent
      l - このLayerUIインスタンスが設定されているレイヤー
      関連項目:
    • processMouseEvent

      protected void processMouseEvent(MouseEvent e, JLayer<? extends V> l)
      JLayerまたはすべてのそのサブコンポーネントで発生するマウス・イベントを処理します。

      このLayerUIが設定されているJLayerオブジェクトに対してマウス・イベントが有効でないかぎり、このメソッドは呼び出されません。 マウス・イベントは、オーバーライドされたinstallUI(JComponent)メソッドで有効になり、その後、uninstallUI(JComponent)メソッドで無効にする必要があります。

      public void installUI(JComponent c) {
         super.installUI(c);
         JLayer l = (JLayer) c;
         l.setLayerEventMask(AWTEvent.MOUSE_EVENT_MASK);
      }
      
      public void uninstallUI(JComponent c) {
          super.uninstallUI(c);
          JLayer l = (JLayer) c;
          l.setLayerEventMask(0);
      }
      

      パラメータ:
      e - 処理するMouseEvent
      l - このLayerUIインスタンスが設定されているレイヤー
      関連項目:
    • processMouseMotionEvent

      protected void processMouseMotionEvent(MouseEvent e, JLayer<? extends V> l)
      JLayerまたはすべてのそのサブコンポーネントで発生するマウス・モーション・イベントを処理します。

      このLayerUIが設定されているJLayerオブジェクトに対してマウス・モーション・イベントが有効でないかぎり、このメソッドは呼び出されません。 マウス・モーション・イベントは、オーバーライドされたinstallUI(JComponent)メソッドで有効になり、その後、uninstallUI(JComponent)メソッドで無効にする必要があります。

      public void installUI(JComponent c) {
         super.installUI(c);
         JLayer l = (JLayer) c;
         l.setLayerEventMask(AWTEvent.MOUSE_MOTION_EVENT_MASK);
      }
      
      public void uninstallUI(JComponent c) {
          super.uninstallUI(c);
          JLayer l = (JLayer) c;
          l.setLayerEventMask(0);
      }
      

      パラメータ:
      e - 処理するMouseEvent
      l - このLayerUIインスタンスが設定されているレイヤー
      関連項目:
    • processMouseWheelEvent

      protected void processMouseWheelEvent(MouseWheelEvent e, JLayer<? extends V> l)
      JLayerまたはすべてのそのサブコンポーネントで発生するマウス・ホイール・イベントを処理します。

      このLayerUIが設定されているJLayerオブジェクトに対してマウス・ホイール・イベントが有効でないかぎり、このメソッドは呼び出されません。 マウス・ホイール・イベントは、オーバーライドされたinstallUI(JComponent)メソッドで有効になり、その後、uninstallUI(JComponent)メソッドで無効にする必要があります。

      public void installUI(JComponent c) {
         super.installUI(c);
         JLayer l = (JLayer) c;
         l.setLayerEventMask(AWTEvent.MOUSE_WHEEL_EVENT_MASK);
      }
      
      public void uninstallUI(JComponent c) {
          super.uninstallUI(c);
          JLayer l = (JLayer) c;
          l.setLayerEventMask(0);
      }
      

      パラメータ:
      e - 処理するMouseEvent
      l - このLayerUIインスタンスが設定されているレイヤー
      関連項目:
    • processInputMethodEvent

      protected void processInputMethodEvent(InputMethodEvent e, JLayer<? extends V> l)
      JLayerまたはそのサブコンポーネントで発生する入力イベントを処理します。

      このLayerUIが設定されているJLayerオブジェクトに対して入力イベントが有効でないかぎり、このメソッドは呼び出されません。 入力イベントは、オーバーライドされたinstallUI(JComponent)メソッドで有効になり、その後、uninstallUI(JComponent)メソッドで無効にする必要があります。

      public void installUI(JComponent c) {
         super.installUI(c);
         JLayer l = (JLayer) c;
         l.setLayerEventMask(AWTEvent.INPUT_METHOD_EVENT_MASK);
      }
      
      public void uninstallUI(JComponent c) {
          super.uninstallUI(c);
          JLayer l = (JLayer) c;
          l.setLayerEventMask(0);
      }
      

      パラメータ:
      e - 処理するInputMethodEvent
      l - このLayerUIインスタンスが設定されているレイヤー
      関連項目:
    • processHierarchyEvent

      protected void processHierarchyEvent(HierarchyEvent e, JLayer<? extends V> l)
      JLayerまたはそのサブコンポーネントで発生する階層イベントを処理します。

      このLayerUIが設定されているJLayerオブジェクトに対して階層イベントが有効でないかぎり、このメソッドは呼び出されません。 階層イベントは、オーバーライドされたinstallUI(JComponent)メソッドで有効になり、その後、uninstallUI(JComponent)メソッドで無効にする必要があります。

      public void installUI(JComponent c) {
         super.installUI(c);
         JLayer l = (JLayer) c;
         l.setLayerEventMask(AWTEvent.HIERARCHY_EVENT_MASK);
      }
      
      public void uninstallUI(JComponent c) {
          super.uninstallUI(c);
          JLayer l = (JLayer) c;
          l.setLayerEventMask(0);
      }
      

      パラメータ:
      e - 処理するHierarchyEvent
      l - このLayerUIインスタンスが設定されているレイヤー
      関連項目:
    • processHierarchyBoundsEvent

      protected void processHierarchyBoundsEvent(HierarchyEvent e, JLayer<? extends V> l)
      JLayerまたはそのサブコンポーネントで発生する階層境界イベントを処理します。

      このLayerUIが設定されているJLayerオブジェクトに対して階層変更イベントが有効でないかぎり、このメソッドは呼び出されません。 階層境界イベントは、オーバーライドされたinstallUI(JComponent)メソッドで有効になり、その後、uninstallUI(JComponent)メソッドで無効にする必要があります。

      public void installUI(JComponent c) {
         super.installUI(c);
         JLayer l = (JLayer) c;
         l.setLayerEventMask(AWTEvent.HIERARCHY_BOUNDS_EVENT_MASK);
      }
      
      public void uninstallUI(JComponent c) {
          super.uninstallUI(c);
          JLayer l = (JLayer) c;
          l.setLayerEventMask(0);
      }
      

      パラメータ:
      e - 処理するHierarchyEvent
      l - このLayerUIインスタンスが設定されているレイヤー
      関連項目:
    • updateUI

      public void updateUI(JLayer<? extends V> l)
      このLayerUIが設定されているJLayerによって、JLayer.updateUI()が呼び出されたときに呼び出されます。
      パラメータ:
      l - UIが更新されるJLayer
    • installUI

      public void installUI(JComponent c)
      このLayerUIが設定されているJLayerを構成します。 デフォルトの実装は、渡されたJLayerコンポーネントをこのLayerUIのプロパティ変更のPropertyChangeListenerとして登録します。
      オーバーライド:
      installUI、クラスComponentUI
      パラメータ:
      c - このUI委譲がインストールされるJLayerコンポーネント
      関連項目:
    • uninstallUI

      public void uninstallUI(JComponent c)
      以前にinstallUI(JComponent)メソッドで設定された構成を取り消します。 デフォルトの実装は、渡されたJLayerコンポーネントをこのLayerUIのプロパティ変更のPropertyChangeListenerとして登録解除します。
      オーバーライド:
      uninstallUI、クラスComponentUI
      パラメータ:
      c - このUI委譲を削除するコンポーネント。
      関連項目:
    • addPropertyChangeListener

      public void addPropertyChangeListener(PropertyChangeListener listener)
      PropertyChangeListenerをリスナー・リストに追加します。 このリスナーは、このクラスのすべてのバウンド・プロパティに登録されます。

      listenernullである場合、例外はスローされず、何も処理は行われません。

      パラメータ:
      listener - 追加されるプロパティ変更リスナー
      関連項目:
    • removePropertyChangeListener

      public void removePropertyChangeListener(PropertyChangeListener listener)
      PropertyChangeListenerをリスナー・リストから削除します。 このメソッドはこのクラスのすべてのバウンド・プロパティに登録されているPropertyChangeListenerの削除に使用するようにしてください。

      listenernullである場合、例外はスローされず、何も処理は行われません。

      パラメータ:
      listener - 削除されるPropertyChangeListener
      関連項目:
    • getPropertyChangeListeners

      public PropertyChangeListener[] getPropertyChangeListeners()
      このコンポーネントに登録されているすべてのプロパティ変更リスナーの配列を返します。
      戻り値:
      このUIのすべてのPropertyChangeListener。または現在プロパティ変更リスナーが登録されていない場合は空の配列
      関連項目:
    • addPropertyChangeListener

      public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
      特定のプロパティのリスナー・リストにPropertyChangeListenerを追加します。

      propertyNameまたはlistenernullである場合、例外はスローされず、何も処理は行われません。

      パラメータ:
      propertyName - 上記のプロパティ名のいずれか
      listener - 追加されるプロパティ変更リスナー
      関連項目:
    • removePropertyChangeListener

      public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
      特定のプロパティのリスナー・リストからPropertyChangeListenerを削除します。 このメソッドは特定のバウンド・プロパティに登録されたPropertyChangeListenerを削除するために使用するようにしてください。

      propertyNameまたはlistenernullである場合、例外はスローされず、何も処理は行われません。

      パラメータ:
      propertyName - 有効なプロパティ名
      listener - 削除されるPropertyChangeListener
      関連項目:
    • getPropertyChangeListeners

      public PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
      指定されたプロパティに関連付けられているすべてのリスナーの配列を返します。
      パラメータ:
      propertyName - 待機しているプロパティの名前
      戻り値:
      指定されたプロパティに関連付けられたすべてのPropertyChangeListener。そのようなリスナーが追加されていないか、またはpropertyNamenullの場合は、空の配列が返される
      関連項目:
    • firePropertyChange

      protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
      Objectプロパティに対するバウンド・プロパティの変更の報告をサポートします。 このメソッドは、バウンド・プロパティが変更されたときに呼び出され、登録されているすべてのPropertyChangeListenerに、対応するPropertyChangeEventを送ります。
      パラメータ:
      propertyName - 値が変更されたプロパティ
      oldValue - プロパティの以前の値
      newValue - プロパティの新しい値
    • applyPropertyChange

      public void applyPropertyChange(PropertyChangeEvent evt, JLayer<? extends V> l)
      そのいずれかのプロパティが変更された場合にLayerUIに通知し、このLayerUIインスタンスが設定されているすべてのJLayerを更新できるようにします。
      パラメータ:
      evt - このLayerUIによって生成されたPropertyChangeEvent
      l - このLayerUIが設定されているJLayer
    • getBaseline

      public int getBaseline(JComponent c, int width, int height)
      JLayerのビュー・コンポーネントがnullでない場合、これはビューのgetBaseline()メソッドを呼び出します。 そうでない場合は、デフォルトの実装が呼び出されます。
      オーバーライド:
      getBaseline、クラスComponentUI
      パラメータ:
      c - ベースラインのサイズ変更の動作を返すJLayer
      width - ベースラインを取得する幅
      height - ベースラインを取得する高さ
      戻り値:
      ベースラインまたは0より小さい値(適切なベースラインがないことを示す)
      関連項目:
    • getBaselineResizeBehavior

      public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
      JLayerのビュー・コンポーネントがnullでない場合は、そのビューのgetBaselineResizeBehavior()メソッドの結果を返します。 そうでない場合は、デフォルトの実装が呼び出されます。
      オーバーライド:
      getBaselineResizeBehavior、クラスComponentUI
      パラメータ:
      c - ベースラインのサイズ変更の動作を返すJLayer
      戻り値:
      コンポーネント・サイズの変化に合わせてベースラインがどのように変化するかを示す列挙
      関連項目:
    • doLayout

      public void doLayout(JLayer<? extends V> l)
      渡されたJLayerのインスタンスに、そのコンポーネントを配置させます。
      パラメータ:
      l - このUI委譲がインストールされるJLayerコンポーネント
    • getPreferredSize

      public Dimension getPreferredSize(JComponent c)
      JLayerのビュー・コンポーネントがnullでない場合は、そのビューのgetPreferredSize()メソッドの結果を返します。 そうでない場合は、デフォルトの実装が使われます。
      オーバーライド:
      getPreferredSize、クラスComponentUI
      パラメータ:
      c - 推奨サイズを返すJLayer
      戻り値:
      渡されたJLayerの適切なサイズ
      関連項目:
    • getMinimumSize

      public Dimension getMinimumSize(JComponent c)
      JLayerのビュー・コンポーネントがnullでない場合は、そのビューのgetMinimalSize()メソッドの結果を返します。 そうでない場合は、デフォルトの実装が使われます。
      オーバーライド:
      getMinimumSize、クラスComponentUI
      パラメータ:
      c - 推奨サイズを返すJLayer
      戻り値:
      渡されたJLayerの最小サイズ
      関連項目:
    • getMaximumSize

      public Dimension getMaximumSize(JComponent c)
      JLayerのビュー・コンポーネントがnullでない場合は、そのビューのgetMaximumSize()メソッドの結果を返します。 そうでない場合は、デフォルトの実装が使われます。
      オーバーライド:
      getMaximumSize、クラスComponentUI
      パラメータ:
      c - 推奨サイズを返すJLayer
      戻り値:
      渡されたJLayerの最大サイズ
      関連項目:
    • paintImmediately

      public void paintImmediately(int x, int y, int width, int height, JLayer<? extends V> l)
      このLayerUIが設定されているJLayerの指定された領域をただちにペイントします。

      このメソッドは、ダーティ・リージョンを変更する必要がある場合にオーバーライドします。 デフォルトの実装は機能をJComponent.paintImmediately(int, int, int, int)に委譲します。

      パラメータ:
      x - ペイント領域のx座標
      y - ペイント領域のy座標
      width - ペイント領域の幅
      height - ペイント領域の高さ
      l - JLayerコンポーネント
      関連項目:
    • imageUpdate

      public boolean imageUpdate(Image img, int infoflags, int x, int y, int w, int h, JLayer<? extends V> l)
      その機能を、JLayerのベース・クラスから継承されるJLayer.imageUpdateメソッドのデフォルト実装に委任します。

      このメソッドは、JLayer.imageUpdateの代わりにオーバーライドされます。

      ノート: このメソッドは、通常、イベント・ディスパッチ・スレッドでは呼び出されません。

      パラメータ:
      img - 監視対象のイメージ
      infoflags - 情報については、imageUpdateを参照してください
      x - x座標
      y - y座標
      w - 幅
      h - 高さ
      l - JLayerコンポーネント
      戻り値:
      infoflagsがイメージが完全にロードされていることを示す場合はfalse、そうでない場合はtrue