JavaTM Platform
Standard Ed. 6

パッケージ javax.swing

すべてのプラットフォームで可能なかぎり同じように機能する「軽量」(Java 共通言語) コンポーネントのセットを提供します。

参照先:
          説明

インタフェースの概要
Action Action インタフェースは、同じ機能が複数のコントロールによってアクセスされる場合に、ActionListener インタフェースに対する便利な拡張機能を提供します。
BoundedRangeModel SliderProgressBar などのコンポーネントが使用するデータモデルを定義します。
ButtonModel ボタンの状態モデルです。
CellEditor すべての汎用エディタが実装可能なメソッドを定義します。
ComboBoxEditor JComboBox コンポーネントに使われるエディタコンポーネントです。
ComboBoxModel コンボボックスのデータモデルです。
DesktopManager DesktopManager オブジェクトは、JDesktopPane オブジェクトによって所有されます。
Icon 通常はコンポーネントの装飾に使用される、固定サイズの小型イメージです。
JComboBox.KeySelectionManager KeySelectionManager を定義するインタフェースです。
ListCellRenderer JList 内のセルをペイントする「ゴム印」として使用できるコンポーネントを識別します。
ListModel JList などのコンポーネントがリスト内の各セルの値およびリストの長さを取得するために使用するメソッドを定義します。
ListSelectionModel 固定のインデックスを持つ値のリストを表示するコンポーネントの、現在の選択状態を表します。
MenuElement メニューに配置できるコンポーネントはすべて、このインタフェースを実装する必要があります。
MutableComboBoxModel ComboBoxModel の可変バージョンです。
Renderer 値の描画 (表示) を行うオブジェクトの必要条件を定義します。
RootPaneContainer このインタフェースは、JRootPane の子を 1 つ持つ JDialog、JFrame、JWindow、JApplet、JInternalFrame などのコンポーネントによって実装されます。
Scrollable JScrollPane などのスクロールコンテナに情報を提供するインタフェースです。
ScrollPaneConstants JScrollPane コンポーネントとともに使われる定数です。
SingleSelectionModel インデックス付き選択範囲を 1 つだけサポートするモデルです。
SpinnerModel 要素を無限に作成できるオブジェクト値シーケンスを表すモデルです。
SwingConstants 一般的には画面上でコンポーネントの配置および方向指定を行うために使用する定数のコレクションです。
UIDefaults.ActiveValue このクラスを使うと、getXXX(key) メソッドで検索されるたびに構築されるデフォルトのテーブルにエントリを格納できます。
UIDefaults.LazyValue このクラスを使うと、getXXX(key) メソッドで初めてルックアップされるまで構築されないデフォルトのテーブルにエントリを格納できます。
WindowConstants ウィンドウのクローズ操作を制御する定数です。
 

クラスの概要
AbstractAction このクラスは、JFC の Action インタフェースのデフォルト実装を提供します。
AbstractButton ボタンおよびメニュー項目の共通動作を定義します。
AbstractCellEditor  
AbstractListModel List にその内容を提供するデータモデルの抽象定義です。
AbstractSpinnerModel このクラスでは、ほとんどの固定 SpinnerModel 実装に適する SpinnerModel インタフェースの ChangeListener 部分を提供します。
ActionMap ActionMap は、キーまたは Actionと呼ばれる Object から Action へのマップを提供します。
BorderFactory 標準的な Border オブジェクトを提供するためのファクトリクラスです。
Box BoxLayout オブジェクトをレイアウトマネージャーとして使う軽量なコンテナです。
Box.Filler 配置に含まれるがビューを持たない軽量コンポーネントの実装です。
BoxLayout 複数のコンポーネントを、垂直方向にも水平方向にも配置できるようにする、レイアウトマネージャーです。
ButtonGroup 複数のボタンのセットに多重排他スコープを設定するために使用します。
CellRendererPane このクラスは、セルレンダリングとそれを使うコンポーネントの間に挿入されます。
ComponentInputMap ComponentInputMap は、特定の JComponent に関連付けられた InputMap です。
DebugGraphics グラフィックスのデバッグをサポートする Graphics のサブクラスです。
DefaultBoundedRangeModel BoundedRangeModel の総称実装です。
DefaultButtonModel Button コンポーネントのデータモデルのデフォルト実装です。
DefaultCellEditor テーブルとツリーセルのデフォルトエディタです。
DefaultComboBoxModel コンボボックスのデフォルトモデルです。
DefaultDesktopManager DesktopManagerDesktopManager の実装です。
DefaultFocusManager このクラスは 1.4 focus API では現在使用されていません。
DefaultListCellRenderer リスト内の項目を描画します。
DefaultListCellRenderer.UIResource UIResource を実装する DefaultListCellRenderer のサブクラスです。
DefaultListModel このクラスは java.util.Vector API を柔軟に実装します。
DefaultListSelectionModel リスト選択のデフォルトデータモデルです。
DefaultRowSorter<M,I> グリッドベースのデータモデルのソートやフィルタの適用を行う RowSorter の実装です。
DefaultRowSorter.ModelWrapper<M,I> DefaultRowSorter.ModelWrapper は、DefaultRowSorter でソートされるデータを提供します。
DefaultSingleSelectionModel SingleSelectionModel の総称実装です。
FocusManager このクラスは 1.4 focus API では現在使用されていません。
GrayFilter イメージをグレースケールに変換し、イメージ内のピクセルの明度を上げることによって、イメージを「無効にする」イメージフィルタです。
GroupLayout GroupLayout は、Container 内に配置するためにコンポーネントを階層的にグループ化する LayoutManager です。
ImageIcon アイコンをイメージからペイントする Icon インタフェースの実装です。
InputMap InputMap は、入力イベント (現在は KeyStroke のみ使用) と Object の間のバインディングを提供します。
InputVerifier このクラスの目的は、クライアントがテキストフィールドと GUI を使って、スムーズなフォーカスナビゲーションを行えるようにサポートすることです。
InternalFrameFocusTraversalPolicy JInternalFrame の初期化 Component を判定するためのアルゴリズムを任意に実行できる FocusTraversalPolicy です。
JApplet JFC/Swing コンポーネントアーキテクチャーのサポートを追加する java.applet.Applet の拡張バージョンです。
JButton 「プッシュ」ボタンの実装です。
JCheckBox チェックボックス、つまり選択あるいは選択解除できる項目の実装で、その状態を表示します。
JCheckBoxMenuItem 選択または選択解除できるメニュー項目です。
JColorChooser JColorChooser は、ユーザーが色を選択および操作できるよう設計されたコントロールの区画を提供します。
JComboBox ボタン、または編集可能フィールドとドロップダウンリストを組み合わせたコンポーネントです。
JComponent トップレベルのコンテナを除くすべての Swing コンポーネントの基底クラスです。
JDesktopPane マルチドキュメントインタフェースまたは仮想デスクトップを生成するコンテナです。
JDialog ダイアログウィンドウを作成するためのメインクラスです。
JEditorPane さまざまな種類のコンテンツを編集するためのテキストコンポーネントです。
JFileChooser JFileChooser はユーザーがファイルを選択する単純な機構を提供します。
JFormattedTextField JFormattedTextField は、JTextField を拡張して、任意の値をフォーマットしたり、ユーザーがテキストを編集したあとでの特定のオブジェクトを取得したりする機能を追加します。
JFormattedTextField.AbstractFormatter AbstractFormatter のインスタンスは、Object から String および String から Object への変換を処理するために JFormattedTextField で使用されます。
JFormattedTextField.AbstractFormatterFactory AbstractFormatterFactory のインスタンスは JFormattedTextField で使用され、値のフォーマットに使用される AbstractFormatter のインスタンスを取得します。
JFrame JFC/Swing コンポーネントアーキテクチャーのサポートを強化する java.awt.Frame の拡張バージョンです。
JInternalFrame ネイティブなフレームに、ドラッグ、クローズ、アイコン化、サイズ変更、タイトル表示、およびメニューバーのサポートなど、多くの機能を提供する軽量オブジェクトです。
JInternalFrame.JDesktopIcon このコンポーネントは JInternalFrame のアイコン化したバージョンを表します。
JLabel 短いテキスト文字列やイメージの表示領域です。
JLayeredPane JLayeredPane は、JFC/Swing コンテナに深さを追加し、必要であればコンポーネントどうしが互いにオーバーラップできるようにします。
JList オブジェクトのリストを表示し、ユーザーが 1 つまたは複数のオブジェクトを選択できるようにするコンポーネントです。
JList.DropLocation JList のドロップ位置を表す TransferHandler.DropLocation のサブクラスです。
JMenu メニューの実装であり、ユーザーが JMenuBar で項目を選択すると表示される JMenuItem を保持するポップアップウィンドウです。
JMenuBar メニューバーの実装です。
JMenuItem メニューの項目の実装です。
JOptionPane JOptionPane によって、ユーザーに値の入力を求めたり情報を提示したりする標準のダイアログボックスを簡単に表示することができます。
JPanel JPanel は、汎用の軽量コンテナです。
JPasswordField JPasswordField は、1 行のテキストの編集を可能にする、軽量コンポーネントです。
JPopupMenu ポップアップメニューの実装です。
JPopupMenu.Separator ポップアップメニュー固有のセパレータです。
JProgressBar 一部のタスクの進捗状況を視覚的に表示するコンポーネントです。
JRadioButton ラジオボタンの実装です。
JRadioButtonMenuItem ラジオボタンメニュー項目の実装です。
JRootPane JFrameJDialogJWindowJApplet、および JInternalFrame が内部で使用する軽量コンテナです。
JScrollBar スクロールバーの実装です。
JScrollPane 軽量コンポーネントのスクロール可能なビューを提供します。
JSeparator JSeparator は、区切り線を実装するための汎用的なコンポーネントを提供します。
JSlider ユーザーが指定された区間内でノブをスライドすることによりグラフィカルに値を選択できるようにするコンポーネントです。
JSpinner ユーザーが、順序付けられたシーケンスから数またはオブジェクトを選択できるようにする単一行の入力フィールドです。
JSpinner.DateEditor モデルが SpinnerDateModelJSpinner 用のエディタです。
JSpinner.DefaultEditor 特殊なエディタ用の簡単な基底クラスです。
JSpinner.ListEditor モデルが SpinnerListModelJSpinner 用のエディタです。
JSpinner.NumberEditor モデルが SpinnerNumberModelJSpinner 用のエディタです。
JSplitPane JSplitPane は 2 つの Component を分割するのに使います (2 つだけに分割)。
JTabbedPane 指定されたタイトルやアイコンを持つタブをクリックすることにより、ユーザーがコンポーネントのグループを切り替えられるようにするコンポーネントです。
JTable JTable は、セルの通常の 2 次元テーブル形式を表示し、編集するために使用します。
JTable.DropLocation JTable のドロップ位置を表す TransferHandler.DropLocation のサブクラスです。
JTextArea JTextArea は、プレーンテキストを表示する複数行の領域です。
JTextField JTextField は、1 行のテキストの編集を可能にする軽量コンポーネントです。
JTextPane グラフィックで表現される属性でマークアップできるテキストコンポーネントです。
JToggleButton 二状態ボタンの実装です。
JToggleButton.ToggleButtonModel ToggleButton モデルです。
JToolBar JToolBar は、一般的に使用される Action またはコントロールを表示するのに役立つコンポーネントを提供します。
JToolBar.Separator ツールバー独自のセパレータです。
JToolTip Component の「ヒント」を表示するために使います。
JTree 階層データのセットをアウトラインで表示するコントロールです。
JTree.DropLocation JTree のドロップ位置を表す TransferHandler.DropLocation のサブクラスです。
JTree.DynamicUtilTreeNode DynamicUtilTreeNode は、ベクター、ハッシュテーブル、配列、および文字列をラップし、必要に応じて適切な子ツリーノードを作成できます。
JTree.EmptySelectionModel EmptySelectionModel は、何の選択も許可しない TreeSelectionModel です。
JViewport 基本となる情報を見るために使用する「ビューポート (窓)」です。
JWindow JWindow は、ユーザーのデスクトップ上のどこにでも表示できるコンテナです。
KeyStroke KeyStroke は、キーボードまたは同等の入力デバイスのキーアクションを表します。
LayoutFocusTraversalPolicy サイズ、位置、方向に基づいて Component をソートする SortingFocusTraversalPolicy です。
LayoutStyle LayoutStyle は、コンポーネントの配置に関する情報を提供します。
LookAndFeel LookAndFeel は、その名前が示すとおり、Look & Feel をカプセル化します。
MenuSelectionManager MenuSelectionManager は、メニュー階層での選択を所有します。
OverlayLayout コンポーネントを互いの上に重なり合うように配置するレイアウトマネージャーです。
Popup Popup は、ユーザーに Component を表示するために使用します。
PopupFactory PopupFactory は、名前からわかるように、Popup のインスタンスを取得するために使います。
ProgressMonitor 処理の進捗を監視するクラスです。
ProgressMonitorInputStream InputStream からの読み込みの進捗を監視します。
RepaintManager このクラスは再ペイント要求を管理し、コンポーネントツリーのメンバーに対する複数の要求を 1 回の再ペイントにまとめることなどにより、再ペイントの回数を最小限に抑えます。
RowFilter<M,I> RowFilter は、エントリをモデルから除去して、ビューに表示されないようにするために使用します。
RowFilter.Entry<M,I> Entry オブジェクトが RowFilter のインスタンスに渡されると、フィルタはエントリのデータ値を取得し、エントリを表示するかどうかを判断することができます。
RowSorter<M> RowSorter は、ソートとフィルタの基盤を提供します。
RowSorter.SortKey SortKey は、特定の列のソート順序を記述します。
ScrollPaneLayout JScrollPane が使用するレイアウトマネージャーです。
ScrollPaneLayout.UIResource ScrollPaneLayout の UI リソースバージョンです。
SizeRequirements レイアウトマネージャーの便宜のために、コンポーネントのサイズと位置についての情報を計算します。
SizeSequence SizeSequence オブジェクトは、サイズおよび対応する位置の、順序付けされたリストを効果的に維持します。
SortingFocusTraversalPolicy 特定の Comparator に基づいてフォーカストラバーサルサイクルの Component をソートすることによってトラバーサルの順序を判定する FocusTraversalPolicy です。
SpinnerDateModel Date のシーケンスの SpinnerModel です。
SpinnerListModel 配列または List によって値を定義する SpinnerModel の単純な実装です。
SpinnerNumberModel 数値のシーケンスを表す SpinnerModel です。
Spring Spring クラスのインスタンスは、その動作を特徴付ける minimumpreferred、および maximum の 3 つのプロパティーを保持しています。
SpringLayout SpringLayout は、一連の制約に基づいて、関連するコンテナの子を配置します。
SpringLayout.Constraints Constraints オブジェクトは、SpringLayout が制御するコンテナ内のコンポーネントのサイズ変更方法および位置変更方法を決定する制約を保持します。
SwingUtilities Swing のユーティリティーメソッドのコレクションです。
SwingWorker<T,V> GUI とやりとりする時間のかかるタスクを、専用のスレッドで実行するための abstract クラスです。
Timer 指定された時間の経過後に、一つ以上の ActionEvent をトリガーします。
ToolTipManager システム内のすべての ToolTip を管理します。
TransferHandler このクラスは、Swing コンポーネントに対する Transferable の転送処理に使用します。
TransferHandler.DropLocation ドロップされたデータを挿入する位置を表します。
TransferHandler.TransferSupport このクラスには、クリップボードによる転送またはドラッグ&ドロップによる転送に関連する詳細情報をすべてカプセル化する機能と、ドラッグ&ドロップ操作をカスタマイズする機能があります。
UIDefaults Swing コンポーネントのデフォルト値のテーブルです。
UIDefaults.LazyInputMap LazyInputMap は、createValue メソッドで InputMap を作成します。
UIDefaults.ProxyLazyValue このクラスは、生成されるインスタンスに Class のロードを遅延させる LazyValue の実装を提供します。
UIManager UIManager は、現在の Look & Feel、使用可能な Look & Feel のセット、Look & Feel の変更時に通知を受ける PropertyChangeListener、Look & Feel のデフォルト値、およびさまざまなデフォルト値を取得するために使用する簡易メソッドを管理します。
UIManager.LookAndFeelInfo メニューの設定またはアプリケーションの初期設定のための、インストール済み LookAndFeel に関する概要を説明します。
ViewportLayout JViewport のデフォルトのレイアウトマネージャーです。
 

列挙型の概要
DropMode メソッドの特定に使用するドロップモードです。
GroupLayout.Alignment ParallelGroup がその子を配置するときに選択できる方法の列挙です。
JTable.PrintMode JTable の印刷に使用する印刷モードです。
LayoutStyle.ComponentPlacement ComponentPlacement は、2 つのコンポーネントを相互に関連付けて配置する場合に使用できる方法の列挙です。
RowFilter.ComparisonType 一部のデフォルトの RowFilter でサポートされる、値比較に使用される可能性がある値の列挙です。
SortOrder SortOrder は、可能なソート順序の列挙です。
SwingWorker.StateValue state バウンドプロパティーの値です。
 

例外の概要
UnsupportedLookAndFeelException 要求された Look & Feel の管理クラスがユーザーのシステム上に存在しないことを示す例外です。
 

パッケージ javax.swing の説明

すべてのプラットフォームで可能なかぎり同じように機能する「軽量」(Java 共通言語) コンポーネントのセットを提供します。これらのコンポーネントの使用方法に関するプログラマ向けガイドについては、「The Java Tutorial」の「Creating a GUI with JFC/Swing」を参照してください。その他のリソースについては、「関連ドキュメント」を参照してください。

Swing のスレッドポリシー

通常、Swing はスレッドに対して安全ではありません。すべての Swing コンポーネントと関連クラスには、特に説明がないかぎり、イベントディスパッチスレッド上でアクセスしてください。

通常の Swing アプリケーションは、ユーザーのジェスチャーによって生成されたイベントに応じて、処理を実行します。たとえば、ユーザーが JButton をクリックすると、JButton に追加されたすべての ActionListener に通知が送信されます。ユーザーのジェスチャーによって生成されたすべてのイベントはイベントディスパッチスレッド上でディスパッチされるので、開発者が制限の影響を受けることは、ほとんどありません。

ただし、Swing アプリケーションの構築時と表示時には影響があります。イベントディスパッチスレッド上では、アプリケーションの main メソッドの呼び出しや Applet 内のメソッドの呼び出しは行われません。このため、アプリケーションやアプレットの構築時および表示時には、イベントディスパッチスレッドに制御を渡すように注意してください。制御を渡し、Swing の処理を開始するためには、invokeLater を使用することをお勧めします。invokeLater メソッドは、Runnable がイベントディスパッチスレッド上で処理されるようにスケジュールします。次に、Swing アプリケーションに制御を渡し、Swing アプリケーションを起動する例を 2 つ示します。どちらの方法も適切です。

public class MyApp implements Runnable {
public void run() {
// Invoked on the event dispatching thread.
// Construct and show GUI.
    }

public static void main (String [] args) {
SwingUtilities.invokeLater(new MyApp(args));
    }
}
または:
public class MyApp {
MyApp(String[] args) {
// Invoked on the event dispatching thread.Do any initialization
// here.
    }

public void show() {
// Show the UI.
    }

public static void main(final String[] args) {
// Schedule a job for the event-dispatching thread:
// creating and showing this application's GUI.
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new MyApp(args).show();
            }
        });
    }
}
この制約は、Swing コンポーネントに接続されたモデルにも適用されます。たとえば、TableModelJTable に接続されている場合、TableModel の変更は必ずイベントディスパッチスレッド上で行うようにしてください。別のスレッド上でモデルを変更した場合、例外が発生し、画面の表示が崩れる可能性があります。

すべてのイベントはイベントディスパッチスレッド上で配信されるので、イベント処理時に注意してください。特に、イベントディスパッチスレッド上で、ネットワーク入出力や計算量の多い処理など、時間のかかるタスクを実行すると、その他のイベントのディスパッチがブロックされます。 イベントディスパッチスレッドがブロックされている間、アプリケーションはユーザーの入力に一切反応しなくなります。Swing の使用時にこのような処理を実行する場合は、SwingWorker の説明に従うことをお勧めします。

このトピックの詳細は、「The Swing Tutorial」(特に「How to Use Threads」のセクション) を参照してください。

関連ドキュメント

概要、チュートリアル、例、ガイド、その他のマニュアルについては、以下を参照してください。


JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。