java.lang.Object
javax.swing.RepaintManager
public class RepaintManager extends Object
このクラスは再ペイント要求を管理し、コンポーネント・ツリーのメンバーに対する複数の要求を1回の再ペイントにまとめることなどにより、再ペイントの回数を最小限に抑えます。
1.6以降、RepaintManager
は、Swingのトップレベル・コンポーネント(JApplet
、JWindow
、JFrame
、およびJDialog
)の再ペイント要求を処理するようになりました。 これらのコンポーネントでrepaint
を呼び出すと、適切なaddDirtyRegion
メソッドが呼び出されます。
- 導入されたバージョン:
- 1.2
-
コンストラクタのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明void
addDirtyRegion
(Applet applet, int x, int y, int w, int h) 削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。Applet APIは非推奨です。void
addDirtyRegion
(Window window, int x, int y, int w, int h) 再描画する必要があるComponent
のリストにwindow
を追加します。void
addDirtyRegion
(JComponent c, int x, int y, int w, int h) リフレッシュされるコンポーネントのリストにコンポーネントを追加します。void
addInvalidComponent
(JComponent invalidComponent) レイアウトの必要に応じてコンポーネントをマークし、コンポーネントの最初のisValidateRoot()の上位オブジェクトを検証するイベント・ディスパッチ・スレッドのために実行可能なコンポーネントを待ち行列に入れます。static RepaintManager
Componentを指定して、呼出し側スレッドのRepaintManagerを返します。static RepaintManager
JComponentを指定して、呼出し側スレッドのRepaintManagerを返します。getDirtyRegion
(JComponent aComponent) コンポーネントの現在のダーティ・リージョンを返します。最大のdoubleバッファ・サイズを返します。getOffscreenBuffer
(Component c, int proposedWidth, int proposedHeight) コンポーネントc
とともにdoubleバッファとして使用されるオフスクリーン・バッファを返します。getVolatileOffscreenBuffer
(Component c, int proposedWidth, int proposedHeight) 指定されたコンポーネントc
とともにdoubleバッファとして使用されるvolatileオフスクリーン・バッファを返します。boolean
isCompletelyDirty
(JComponent aComponent) 次のpaintDirtyRegions()でaComponentが完全にペイントされる場合にtrueを返す簡易メソッドです。boolean
このRepaintManagerに対してダブル・バッファリングが行われる場合にtrueを返します。void
markCompletelyClean
(JComponent aComponent) 完全にクリーンなコンポーネントをマークします。void
markCompletelyDirty
(JComponent aComponent) 完全にダーティなコンポーネントをマークします。void
ダーティとしてマークされたコンポーネントをすべてペイントします。void
removeInvalidComponent
(JComponent component) 無効なコンポーネントのリストからコンポーネントを削除します。static void
setCurrentManager
(RepaintManager aRepaintManager) 呼出し側スレッドで使用されるRepaintManagerを設定します。void
setDoubleBufferingEnabled
(boolean aFlag) このRepaintManagerでのダブル・バッファリングを有効または無効にします。void
最大のdoubleバッファ・サイズを設定します。toString()
このオブジェクトのプロパティを表示および識別する文字列を返します。void
無効としてマークされたコンポーネントをすべて検証します。
-
コンストラクタの詳細
-
RepaintManager
public RepaintManager()新しいRepaintManagerのインスタンスを生成します。 このコンストラクタを直接呼び出すことはほとんどありません。 デフォルトのRepaintManagerを取得するには、RepaintManager.currentManager(JComponent)(通常はthis)を使用します。
-
-
メソッドの詳細
-
currentManager
public static RepaintManager currentManager(Component c) Componentを指定して、呼出し側スレッドのRepaintManagerを返します。- パラメータ:
c
- Component。デフォルトの実装では使用されないが、オーバーライド版で使用すると異なるRepaintManagerを返す可能性がある- 戻り値:
- RepaintManagerオブジェクト
-
currentManager
public static RepaintManager currentManager(JComponent c) JComponentを指定して、呼出し側スレッドのRepaintManagerを返します。ノート: このメソッドは、旧バージョンのSwingライブラリのバイナリとの下位互換性のために提供されます。 このメソッドは、単に
currentManager(Component)
によって返される結果を返します。- パラメータ:
c
- JComponent。使用されない- 戻り値:
- RepaintManagerオブジェクト
-
setCurrentManager
public static void setCurrentManager(RepaintManager aRepaintManager) 呼出し側スレッドで使用されるRepaintManagerを設定します。aRepaintManagerが、呼出し側スレッドのスレッド・グループの現在のRepaintManagerになります。- パラメータ:
aRepaintManager
- 使用するRepaintManagerオブジェクト
-
addInvalidComponent
public void addInvalidComponent(JComponent invalidComponent) レイアウトの必要に応じてコンポーネントをマークし、コンポーネントの最初のisValidateRoot()の上位オブジェクトを検証するイベント・ディスパッチ・スレッドのために実行可能なコンポーネントを待ち行列に入れます。- パラメータ:
invalidComponent
- コンポーネント- 関連項目:
-
removeInvalidComponent
public void removeInvalidComponent(JComponent component) 無効なコンポーネントのリストからコンポーネントを削除します。- パラメータ:
component
- コンポーネント- 関連項目:
-
addDirtyRegion
public void addDirtyRegion(JComponent c, int x, int y, int w, int h) リフレッシュされるコンポーネントのリストにコンポーネントを追加します。 cにすでにダーティ・リージョンがある場合、矩形(x,y,w,h)は再描画される領域と結合されます。- パラメータ:
c
- 再ペイントするコンポーネント。nullの場合は何も行われない。x
- 再ペイントする領域のX座標y
- 再ペイントする領域のY座標w
- 再ペイントする領域の幅h
- 再ペイントする領域の高さ- 関連項目:
-
addDirtyRegion
public void addDirtyRegion(Window window, int x, int y, int w, int h) 再描画する必要があるComponent
のリストにwindow
を追加します。- パラメータ:
window
- 再ペイントするウィンドウ。nullの場合は何も行われない。x
- 再ペイントする領域のX座標y
- 再ペイントする領域のY座標w
- 再ペイントする領域の幅h
- 再ペイントする領域の高さ- 導入されたバージョン:
- 1.6
- 関連項目:
-
addDirtyRegion
@Deprecated(since="9", forRemoval=true) public void addDirtyRegion(Applet applet, int x, int y, int w, int h) 削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。Applet APIは非推奨です。 詳細については、「java.appletパッケージのドキュメント」を参照してください。再描画する必要があるComponent
のリストにapplet
を追加します。- パラメータ:
applet
- 再ペイントするアプレット。nullの場合は何も行われない。x
- 再ペイントする領域のX座標y
- 再ペイントする領域のY座標w
- 再ペイントする領域の幅h
- 再ペイントする領域の高さ- 導入されたバージョン:
- 1.6
- 関連項目:
-
getDirtyRegion
public Rectangle getDirtyRegion(JComponent aComponent) コンポーネントの現在のダーティ・リージョンを返します。 コンポーネントがダーティでない場合は、空の矩形を返します。- パラメータ:
aComponent
- コンポーネント- 戻り値:
- 地域
-
markCompletelyDirty
public void markCompletelyDirty(JComponent aComponent) 完全にダーティなコンポーネントをマークします。aComponentは、次のpaintDirtyRegions()の呼出しで完全にペイントされます。- パラメータ:
aComponent
- コンポーネント
-
markCompletelyClean
public void markCompletelyClean(JComponent aComponent) 完全にクリーンなコンポーネントをマークします。aComponentは、次のpaintDirtyRegions()の呼出しでペイントされることはありません。- パラメータ:
aComponent
- コンポーネント
-
isCompletelyDirty
public boolean isCompletelyDirty(JComponent aComponent) 次のpaintDirtyRegions()でaComponentが完全にペイントされる場合にtrueを返す簡易メソッドです。 ダーティ・リージョンを計算すると、コンポーネントに負荷が大きい場合は、このメソッドを使用してください。trueを返す場合には、ダーティ・リージョンの計算を避けられます。- パラメータ:
aComponent
- コンポーネント- 戻り値:
true
aComponentが次のpaintDirtyRegions()の間に完全に描画される場合。
-
validateInvalidComponents
public void validateInvalidComponents()無効としてマークされたコンポーネントをすべて検証します。- 関連項目:
-
paintDirtyRegions
public void paintDirtyRegions()ダーティとしてマークされたコンポーネントをすべてペイントします。- 関連項目:
-
toString
public String toString()このオブジェクトのプロパティを表示および識別する文字列を返します。 -
getOffscreenBuffer
コンポーネントc
とともにdoubleバッファとして使用されるオフスクリーン・バッファを返します。 デフォルトでは、RepaintManagerごとにdoubleバッファがあります。 バッファは、(proposedWidth,proposedHeight)
より小さい場合があります。これが発生するのは、受取り側の再ペイント・マネージャに対して最大のdoubleバッファ・サイズが設定された場合です。- パラメータ:
c
- コンポーネントproposedWidth
- バッファの幅proposedHeight
- バッファの高さ- 戻り値:
- イメージ
-
getVolatileOffscreenBuffer
指定されたコンポーネントc
とともにdoubleバッファとして使用されるvolatileオフスクリーン・バッファを返します。 返されるイメージはVolatileImageのインスタンスであり、VolatileImageオブジェクトをインスタンス化できなかった場合はnullが返されます。 バッファは、(proposedWidth,proposedHeight)
より小さい場合があります。 これが発生するのは、受け取り側の再ペイント・マネージャに対して最大のdoubleバッファ・サイズが設定された場合です。- パラメータ:
c
- コンポーネントproposedWidth
- バッファの幅proposedHeight
- バッファの高さ- 戻り値:
- 揮発性イメージ
- 導入されたバージョン:
- 1.4
- 関連項目:
-
setDoubleBufferMaximumSize
public void setDoubleBufferMaximumSize(Dimension d) 最大のdoubleバッファ・サイズを設定します。- パラメータ:
d
- ディメンション
-
getDoubleBufferMaximumSize
public Dimension getDoubleBufferMaximumSize()最大のdoubleバッファ・サイズを返します。- 戻り値:
- 最大サイズを表すDimensionオブジェクト
-
setDoubleBufferingEnabled
public void setDoubleBufferingEnabled(boolean aFlag) このRepaintManagerでのダブル・バッファリングを有効または無効にします。 注意: このプロパティのデフォルト値は、各プラットフォームで最適なペイント・パフォーマンスを実現できるように設定されています。プログラムでこのプロパティを直接変更することはお薦めできません。- パラメータ:
aFlag
- ダブル・バッファリングを有効にする場合はtrue- 関連項目:
-
isDoubleBufferingEnabled
public boolean isDoubleBufferingEnabled()このRepaintManagerに対してダブル・バッファリングが行われる場合にtrueを返します。 このプロパティのデフォルト値は、プラットフォームによって異なります。 AWTでネイティブなダブル・バッファリングがサポートされているプラットフォームでは、Swingで不要なバッファリングが行われないように、デフォルト値がfalse
に設定されます。 ネイティブなダブル・バッファリングがサポートされていないプラットフォームでは、デフォルト値がtrue
に設定されます。- 戻り値:
- このオブジェクトに対してダブル・バッファリングが行われる場合はtrue
-