| インタフェース | 説明 | 
|---|---|
| Action | Actionインタフェースは、同じ機能が複数のコントロールによってアクセスされる場合に、ActionListenerインタフェースに対する便利な拡張機能を提供します。 | 
| BoundedRangeModel | SliderやProgressBarなどのコンポーネントが使用するデータモデルを定義します。 | 
| ButtonModel | ボタンの状態モデルです。 | 
| CellEditor | すべての汎用エディタが実装可能なメソッドを定義します。 | 
| ComboBoxEditor | JComboBox コンポーネントに使われるエディタコンポーネントです。 | 
| ComboBoxModel<E> | コンボボックスのデータモデルです。 | 
| DesktopManager | DesktopManager オブジェクトは、JDesktopPane オブジェクトによって所有されます。 | 
| Icon | 通常はコンポーネントを装飾するために使う、固定サイズの小型イメージです。 | 
| JComboBox.KeySelectionManager | KeySelectionManagerを定義するインタフェースです。 | 
| ListCellRenderer<E> | JList 内のセルをペイントする「ゴム印」として使用できるコンポーネントを識別します。 | 
| ListModel<E> | JList などのコンポーネントがリスト内の各セルの値およびリストの長さを取得するために使用するメソッドを定義します。 | 
| ListSelectionModel | 固定のインデックスを持つ値のリストを表示するコンポーネントの、現在の選択状態を表します。 | 
| MenuElement | メニューに配置できるコンポーネントはすべて、このインタフェースを実装する必要があります。 | 
| MutableComboBoxModel<E> | ComboBoxModelの可変バージョンです。 | 
| Painter<T> | ペイント委譲。 | 
| 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 | CellEditorsの基底クラスであり、getCellEditorValue()を除くCellEditorインタフェースのメソッドのデフォルトの実装を提供します。 | 
| AbstractListModel<E> | 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<E> | コンボボックスのデフォルトモデルです。 | 
| DefaultDesktopManager | DesktopManagerの実装です。 | 
| DefaultFocusManager | このクラスは 1.4 focus API では現在使用されていません。 | 
| DefaultListCellRenderer | リスト内の項目をレンダリングします。 | 
| DefaultListCellRenderer.UIResource | UIResource を実装する DefaultListCellRenderer のサブクラスです。 | 
| DefaultListModel<E> | このクラスは  java.util.VectorAPI を柔軟に実装します。1.1.x のjava.util.Vectorを実装しますが、コレクションクラスはサポートせず、変更発生時にはListDataListenerに通知します。 | 
| 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<E> | ボタンまたは編集可能フィールドとドロップダウンリストを組み合わせたコンポーネントです。 | 
| 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 | 短いテキスト文字列やイメージの表示領域です。両方を一緒に表示することもできます。 | 
| JLayer<V extends Component> | JLayerは、さまざまな高度なペイント効果を実装したり、そのボーダー内で生成されるすべてのAWTEventの通知を受信したりするために使用できる、Swing コンポーネントのための汎用のデコレータです。 | 
| JLayeredPane | JLayeredPaneは JFC/Swing コンテナに深さを追加し、コンポーネントが必要に応じて互いにオーバーラップできるようにします。 | 
| JList<E> | オブジェクトのリストを表示し、ユーザーが 1 つまたは複数のオブジェクトを選択できるようにするコンポーネントです。 | 
| JList.DropLocation | TransferHandler.DropLocationのサブクラスであり、JListのドロップ位置を表します。 | 
| JMenu | メニュー (ユーザーが  JMenuBarの項目を選択したときに表示される、JMenuItemを含むポップアップウィンドウ) の実装です。 | 
| JMenuBar | メニューバーの実装です。 | 
| JMenuItem | メニューの項目の実装です。 | 
| JOptionPane | JOptionPaneは、ユーザーに値の入力を求めたり、何らかの情報を通知したりするための標準のダイアログボックスを容易にポップアップできるようにします。 | 
| JPanel | JPanelは、汎用の軽量コンテナです。 | 
| JPasswordField | JPasswordFieldは、1 行のテキストの編集を可能にする軽量コンポーネントです。何かが入力されたことはビューに示されますが、元の文字は表示されません。 | 
| JPopupMenu | ポップアップメニュー (一連の選択肢をポップアップおよび表示する小さなウィンドウ) の実装です。 | 
| JPopupMenu.Separator | ポップアップメニュー固有のセパレータです。 | 
| JProgressBar | 一部のタスクの進捗状況を視覚的に表示するコンポーネントです。 | 
| JRadioButton | ラジオボタン (選択または選択解除が可能で、その状態をユーザーに表示する項目) の実装です。 | 
| JRadioButtonMenuItem | ラジオボタンメニュー項目の実装です。 | 
| JRootPane | JFrame、JDialog、JWindow、JApplet、およびJInternalFrameによって内部的に使用される軽量コンテナ。 | 
| JScrollBar | スクロールバーの実装です。 | 
| JScrollPane | 軽量コンポーネントのスクロール可能なビューを提供します。 | 
| JSeparator | JSeparatorは、区切り線を実装するための汎用的なコンポーネントを提供します。もっとも一般的には、メニュー項目を論理的なグループに分割するための項目間の区切り線として使用されます。 | 
| JSlider | ユーザーが指定された区間内でノブをスライドすることによりグラフィカルに値を選択できるようにするコンポーネントです。 | 
| JSpinner | ユーザーが、順序付けられたシーケンスから数またはオブジェクトを選択できるようにする単一行の入力フィールドです。 | 
| JSpinner.DateEditor | モデルが  SpinnerDateModelであるJSpinnerのエディタ。 | 
| JSpinner.DefaultEditor | JFormattedTextFieldを使用してモデルの現在の値の読み取り専用ビューを表示する、より特殊なエディタの単純な基底クラス。 | 
| JSpinner.ListEditor | モデルが  SpinnerListModelであるJSpinnerのエディタ。 | 
| JSpinner.NumberEditor | モデルが  SpinnerNumberModelであるJSpinnerのエディタ。 | 
| JSplitPane | JSplitPaneは、2 つ (2 つだけ) のComponentを分割するために使用されます。 | 
| JTabbedPane | 指定されたタイトルやアイコンを持つタブをクリックすることにより、ユーザーがコンポーネントのグループを切り替えられるようにするコンポーネントです。 | 
| JTable | JTableは、セルの通常の 2 次元テーブルを表示および編集するために使用されます。 | 
| JTable.DropLocation | TransferHandler.DropLocationのサブクラスであり、JTableのドロップ位置を表します。 | 
| JTextArea | JTextAreaは、プレーンテキストを表示する複数行の領域です。 | 
| JTextField | JTextFieldは、1 行のテキストの編集を可能にする軽量コンポーネントです。 | 
| JTextPane | グラフィックで表現される属性でマークアップできるテキストコンポーネントです。 | 
| JToggleButton | 2 つの状態を持つボタンの実装です。 | 
| JToggleButton.ToggleButtonModel | ToggleButton モデルです | 
| JToolBar | JToolBarは、一般的に使用されるActionまたはコントロールを表示するのに役立つコンポーネントを提供します。 | 
| JToolBar.Separator | ツールバー独自のセパレータです。 | 
| JToolTip | Component の「ヒント」を表示するために使います。 | 
| JTree | |
| JTree.DropLocation | TransferHandler.DropLocationのサブクラスであり、JTreeのドロップ位置を表します。 | 
| 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を表示するために使用されます。通常、Componentは、特定の包含関係の階層に存在するほかのすべての 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クラスのインスタンスは、その動作を特徴付ける 3 つのプロパティー (値は minimum、preferred、および maximum) を保持します。 | 
| SpringLayout | SpringLayoutは、関連付けられているコンテナの子を一連の制約に従ってレイアウトします。 | 
| SpringLayout.Constraints | Constraintsオブジェクトは、SpringLayoutが制御するコンテナ内のコンポーネントのサイズ変更方法および位置変更方法を決定する制約を保持します。 | 
| SwingUtilities | Swing のユーティリティーメソッドのコレクションです。 | 
| SwingWorker<T,V> | GUI とやりとりする時間のかかるタスクを、バックグラウンドスレッドで実行するための abstract クラスです。 | 
| Timer | 指定された間隔で、1 つ以上の  ActionEventをトリガーします。 | 
| ToolTipManager | システム内のすべての  ToolTipsを管理します。 | 
| 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 の変更時に通知を受けるPropertyChangeListeners、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 の管理クラスがユーザーのシステム上に存在しないことを示す例外です。 | 
すべてのプラットフォーム上で可能なかぎり同じように機能する「軽量」(Java 共通言語) コンポーネントのセットを提供します。これらのコンポーネントの使用方法に関するプログラマ向けガイドについては、『The Java Tutorial』の「Creating a GUI with JFC/Swing」を参照してください。その他のリソースについては、「関連ドキュメント」を参照してください。
通常の Swing アプリケーションは、ユーザーのジェスチャーによって生成されたイベントに応じて、処理を実行します。たとえば、ユーザーが JButton をクリックすると、JButton に追加されたすべての ActionListeners に通知が送信されます。ユーザーのジェスチャーによって生成されたすべてのイベントはイベントディスパッチスレッド上でディスパッチされるので、開発者が制限の影響を受けることは、ほとんどありません。
ただし、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 コンポーネントに接続されたモデルにも適用されます。たとえば、TableModel が JTable に接続されている場合、TableModel の変更は必ずイベントディスパッチスレッド上で行うようにしてください。別のスレッド上でモデルを変更した場合、例外が発生し、画面の表示が崩れる可能性があります。
すべてのイベントはイベントディスパッチスレッド上で配信されるので、イベント処理時に注意してください。特に、イベントディスパッチスレッド上で、ネットワーク入出力や計算量の多い処理など、時間のかかるタスクを実行すると、その他のイベントのディスパッチがブロックされます。イベントディスパッチスレッドがブロックされている間、アプリケーションはユーザーの入力に一切反応しなくなります。Swing の使用時にこのような処理を実行する場合は、SwingWorker の説明に従うことをお勧めします。
このトピックの詳細は、『The Swing Tutorial』(特に「How to Use Threads」のセクション) を参照してください。
概要、チュートリアル、例、ガイド、その他のマニュアルについては、次を参照してください。
 バグまたは機能を送信 
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.