このページ以下では、ソースコード付きの小さなJava Swing
アプリケーションを例にしてGUI
プログラム作成のコツなどを解説しています。
Swingとは
Swing
は、GUI
(グラフィカル・ユーザ・インタフェース)を作成するための、Java
標準のコンポーネントセット(ライブラリ、UI
ツールキット)です。
新着記事
- 2023-09-18
JTableの水平罫線を描画する位置とその色をソート条件に応じて変更する
JTable
で順位表を作成し、上位と下位のグループ分けを表す水平罫線をJLayer
を使用して描画するよう設定します。
- 2023-09-11
JColorChooserのRGB色選択パネル内に表示される16進数カラーコードにAlpha値を追加する
JColorChooser
のRGB
色選択パネル内に表示される16
進数カラーコードをRGB6
桁からAlpha
値を追加したRGBA8
桁に変更します。
- 2023-09-04
JSpinnerの数値の合計がグループ内で一定になるよう設定する
複数の
SpinnerNumberModel
をセットしたグループを作成し、グループ内でその数値の合計が一定になるよう設定します。
- 2023-08-28
JComboBoxのドロップダウンリストを2段に変更する
JComboBox
のドロップダウンリストのレイアウトに変更してリストアイテムを2
段で表示する
- 2023-08-21
JColorChooserのSwatchesタブに配置されたRecentカラーパレットを保存、復元する
JColorChooser
のサンプル(Swatches)
タブに配置されている最新(Recent)
カラーパレットを保存、復元可能になるよう設定します。
更新履歴
Tips一覧
javax.swing.JComponent
- JTable(64)
- JTree(53)
- JTextComponent(29)
- JButton AbstractButton(35)
- JComboBox(75)
- JTabbedPane(72)
- JScrollPane JViewport JScrollBar(64)
- JMenuBar JToolBar JMenu JMenuItem JSeparator(52)
- JList(50)
- JFileChooser JOptionPane JColorChooser(49)
- JFrame JDialog JWindow(46)
- JPopupMenu(45)
- JLabel(44)
- JLayer(44)
- JTextField JPasswordField JFormattedTextField(43)
- JPanel JSplitPane(40)
- JInternalFrame JLayeredPane JDesktopPane(35)
- JToolTip(33)
- JSlider(32)
- JProgressBar ProgressMonitor(31)
- JSpinner(28)
ライセンス
このページ以下のすべてのソースコードはGitHubで、MITライセンスのもと公開しています。
Git
リポジトリを取得する場合:git clone https://github.com/aterai/java-swing-tips.git
Subversion
で特定のディレクトリ以下のみ取得する場合:# 例えばSurrogatePair以下のサンプルコードのみ取得する svn co https://github.com/aterai/java-swing-tips/trunk/SurrogatePair
編集方針
- 最も欲しいものはサンプル (あるチュートリアルの思い出 - Backnumbers: Steps to Phantasien)
- 各ページからダブルクリックなどで実行可能な
JAR
ファイルをダウンロードが可能
- 各ページからダブルクリックなどで実行可能な
- SSCCE (Short, Self Contained, Correct Example)
- MCVE (How to create a Minimal, Complete, and Verifiable example - Help Center - Stack Overflow)
- 最小限の・自己完結した・確認可能なサンプルコードの書き方 - ヘルプ センター - スタック・オーバーフロー
- すべての記事毎に、ソースコードや画像などのリソース、それらをAntでコンパイル、実行するための
build.xml
をまとめたzip
ファイルを添付
動作環境
- 動作環境、サンプルの実行方法などについて
- このサイトにあるサンプルの動作・テスト環境や
JDK
のダウンロード・利用方法、質問・不具合報告についてのお願いなど
- このサイトにあるサンプルの動作・テスト環境や
- Swing関係のバグについて
- このサイトのサンプルの不具合ではなく
Swing
自体の不具合についてのメモ
- このサイトのサンプルの不具合ではなく
参考リンク
- Java Swing 参考リンク
- 参考にしたサイトなどの一覧