public class RepaintManager extends Object
1.6以降、RepaintManager
は、Swingのトップレベル・コンポーネント(JApplet
、JWindow
、JFrame
、およびJDialog
)の再ペイント要求を処理するようになりました。これらのコンポーネントでrepaint
を呼び出すと、適切なaddDirtyRegion
メソッドが呼び出されます。
コンストラクタと説明 |
---|
RepaintManager()
新しいRepaintManagerのインスタンスを生成します。
|
修飾子と型 | メソッドと説明 |
---|---|
void |
addDirtyRegion(Applet applet, int x, int y, int w, int h)
再描画する必要がある
Component のリストにapplet を追加します。 |
void |
addDirtyRegion(JComponent c, int x, int y, int w, int h)
リフレッシュされるコンポーネントのリストにコンポーネントを追加します。
|
void |
addDirtyRegion(Window window, int x, int y, int w, int h)
再描画する必要がある
Component のリストにwindow を追加します。 |
void |
addInvalidComponent(JComponent invalidComponent)
レイアウトの必要に応じてコンポーネントをマークし、コンポーネントの最初のisValidateRoot()の上位オブジェクトを検証するイベント・ディスパッチ・スレッドのために実行可能なコンポーネントを待ち行列に入れます。
|
static RepaintManager |
currentManager(Component c)
Componentを指定して、呼出し側スレッドのRepaintManagerを返します。
|
static RepaintManager |
currentManager(JComponent c)
JComponentを指定して、呼出し側スレッドのRepaintManagerを返します。
|
Rectangle |
getDirtyRegion(JComponent aComponent)
コンポーネントの現在のダーティ・リージョンを返します。
|
Dimension |
getDoubleBufferMaximumSize()
最大のdoubleバッファ・サイズを返します。
|
Image |
getOffscreenBuffer(Component c, int proposedWidth, int proposedHeight)
コンポーネント
c とともにdoubleバッファとして使用されるオフスクリーン・バッファを返します。 |
Image |
getVolatileOffscreenBuffer(Component c, int proposedWidth, int proposedHeight)
指定されたコンポーネント
c とともにdoubleバッファとして使用されるvolatileオフスクリーン・バッファを返します。 |
boolean |
isCompletelyDirty(JComponent aComponent)
次のpaintDirtyRegions()でaComponentが完全にペイントされる場合にtrueを返す簡易メソッドです。
|
boolean |
isDoubleBufferingEnabled()
このRepaintManagerに対してダブル・バッファリングが行われる場合にtrueを返します。
|
void |
markCompletelyClean(JComponent aComponent)
完全にクリーンなコンポーネントをマークします。
|
void |
markCompletelyDirty(JComponent aComponent)
完全にダーティなコンポーネントをマークします。
|
void |
paintDirtyRegions()
ダーティとしてマークされたコンポーネントをすべてペイントします。
|
void |
removeInvalidComponent(JComponent component)
無効なコンポーネントのリストからコンポーネントを削除します。
|
static void |
setCurrentManager(RepaintManager aRepaintManager)
呼出し側スレッドで使用されるRepaintManagerを設定します。
|
void |
setDoubleBufferingEnabled(boolean aFlag)
このRepaintManagerでのダブル・バッファリングを有効または無効にします。
|
void |
setDoubleBufferMaximumSize(Dimension d)
最大のdoubleバッファ・サイズを設定します。
|
String |
toString()
このオブジェクトのプロパティを表示および識別する文字列を返します。
|
void |
validateInvalidComponents()
無効としてマークされたコンポーネントをすべて検証します。
|
public RepaintManager()
public static RepaintManager currentManager(Component c)
c
- Component。デフォルトの実装では使用されないが、オーバーライド版で使用すると異なるRepaintManagerを返す可能性があるpublic static RepaintManager currentManager(JComponent c)
注: このメソッドは、旧バージョンのSwingライブラリのバイナリとの下位互換性のために提供されます。このメソッドは、単にcurrentManager(Component)
によって返される結果を返します。
c
- JComponent。使用されないpublic static void setCurrentManager(RepaintManager aRepaintManager)
aRepaintManager
- 使用するRepaintManagerオブジェクトpublic void addInvalidComponent(JComponent invalidComponent)
public void removeInvalidComponent(JComponent component)
public void addDirtyRegion(JComponent c, int x, int y, int w, int h)
c
- 再ペイントするコンポーネント。nullの場合は何も行われない。x
- 再ペイントする領域のX座標y
- 再ペイントする領域のY座標w
- 再ペイントする領域の幅h
- 再ペイントする領域の高さJComponent.repaint(long, int, int, int, int)
public void addDirtyRegion(Window window, int x, int y, int w, int h)
Component
のリストにwindow
を追加します。window
- 再ペイントするウィンドウ。nullの場合は何も行われない。x
- 再ペイントする領域のX座標y
- 再ペイントする領域のY座標w
- 再ペイントする領域の幅h
- 再ペイントする領域の高さJFrame.repaint(long, int, int, int, int)
, JWindow.repaint(long, int, int, int, int)
, JDialog.repaint(long, int, int, int, int)
public void addDirtyRegion(Applet applet, int x, int y, int w, int h)
Component
のリストにapplet
を追加します。applet
- 再ペイントするアプレット。nullの場合は何も行われない。x
- 再ペイントする領域のX座標y
- 再ペイントする領域のY座標w
- 再ペイントする領域の幅h
- 再ペイントする領域の高さJApplet.repaint(long, int, int, int, int)
public Rectangle getDirtyRegion(JComponent aComponent)
public void markCompletelyDirty(JComponent aComponent)
public void markCompletelyClean(JComponent aComponent)
public boolean isCompletelyDirty(JComponent aComponent)
public void validateInvalidComponents()
public void paintDirtyRegions()
public String toString()
public Image getOffscreenBuffer(Component c, int proposedWidth, int proposedHeight)
c
とともにdoubleバッファとして使用されるオフスクリーン・バッファを返します。デフォルトでは、RepaintManagerごとにdoubleバッファがあります。バッファは、(proposedWidth,proposedHeight)
より小さい場合があります。これが発生するのは、受取り側の再ペイント・マネージャに対して最大のdoubleバッファ・サイズが設定された場合です。public Image getVolatileOffscreenBuffer(Component c, int proposedWidth, int proposedHeight)
c
とともにdoubleバッファとして使用されるvolatileオフスクリーン・バッファを返します。返されるイメージはVolatileImageのインスタンスであり、VolatileImageオブジェクトをインスタンス化できなかった場合はnullが返されます。バッファは、(proposedWidth,proposedHeight)
より小さい場合があります。これが発生するのは、受け取り側の再ペイント・マネージャに対して最大のdoubleバッファ・サイズが設定された場合です。VolatileImage
public void setDoubleBufferMaximumSize(Dimension d)
public Dimension getDoubleBufferMaximumSize()
public void setDoubleBufferingEnabled(boolean aFlag)
aFlag
- ダブル・バッファリングを有効にする場合はtrueisDoubleBufferingEnabled()
public boolean isDoubleBufferingEnabled()
false
に設定されます。ネイティブなダブル・バッファリングがサポートされていないプラットフォームでは、デフォルト値がtrue
に設定されます。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.