💾

Java Swingを使いこなしたい。 #1

2025/01/02に公開

はじめに

自分の学び 兼 業務のための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みたいなもの。

makeWindow.java
/* 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