Java Swingを使いこなしたい。 #1
はじめに
自分の学び 兼 業務のためのGUIツールを作りたい人に向けたメモです。
今時Java Swingを使う人なんていないと思いますが、自社の環境だと、セキュリティの都合で今時はやりのPythonとか入れられず、使えるのがこれくらいだったので、何とか使おうと思い立ち、勉強し始めることにしました。
意外とネットで検索しても詳しいものが出てこず、、、これは需要があるのでは?
(本当か?)
Java Swingとは?
JavaのSwingは、GUI(グラフィカルユーザーインターフェース)ツールキットです。
Swingの良さとして、すべてのプラットフォーム上(Windows、macOS、Linuxなど)で可能な限り同じように機能するという良さがあります。
筆者はWindowsで実行します。
前提
この記事はプログラミング履修前提で書くので、変数とかライブラリとか、基本的な単語については説明しません。
また、筆者はJavaの開発経験がなく、手探りでSwingを学びつつ書いているので、つたないコードがあっても許してください。。。
筆者の動作環境
- OS:Windows11
- Java version:1.8.0_411
- IDE(開発統合環境):Eclipse Java EE IDE for Web Developers Mars.2 Release (4.5.2)
ウィンドウを作る
初手も初手。Hello Worldみたいなもの。
/* makeWindows */
import javax.swing.JFrame;
public class makeWindow {
public static void main(String[] args) {
final JFrame frame = new JFrame("testWindow");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300,200);
frame.setVisible(true);
}
}
ウィンドウが表示されました。
ここからはコードの解説を書いていきます。
import javax.swing.JFrame
ここで肝心なGUIの枠組みとなるJFrameのパッケージをインポートします。
final JFrame frame = new JFrame("testWindow");
"testWindow"というタイトルのJFrameのインスタンスを生成します。
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ウィンドウが閉じたときの動作を指定します。
"JFrame.EXIT_ON_CLOSE"の場合、ウィンドウが閉じるとプログラムの動作も終了します。
frame.setSize(300,200);
ウィンドウの幅を300、縦を200に設定しています。
frame.setVisible(true);
作成したJFrameインスタンスをみえる状態にしています。
終わりに
今回はJframeという枠組みのコンポーネントを紹介しました。
Swingに用意されているコンポーネントはほかにもいっぱいあるため、徐々に勉強していこうと思います。
(不定期投稿)
参考文献
Java GUIプログラミング: Swingを使った今どきのアプリ開発
(著者:日向 俊二)
Discussion