ぼんやりSEの覚書

プログラムを書きたい。

CSVツールを作りたい。(Java Swingを使いこなしたい。) #1

はじめに

自分の学び 兼 業務のためのGUIツールを作りたい人に向けたメモです。 今時Java Swingを使う人なんていないと思いますが、自社の環境だと、セキュリティの都合で今時はやりのPythonとか入れられず、使えるのがこれくらいだったので、何とか使おうと思い立ち、勉強し始めることにしました。 意外とネットで検索しても詳しいものが出てこず、、、これは需要があるのでは? (本当か?)

最終的には、今ちょうど業務で困っている、CSVを読み書きできるようなツールが作れたらと思っています。

Java Swingとは?

JavaのSwingは、GUIグラフィカルユーザーインターフェース)ツールキットです。 Swingの良さとして、すべてのプラットフォーム上(WindowsmacOSLinuxなど)で可能な限り同じように機能するという良さがあります。 筆者は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);
    }

}

Swing_Windows表示

ウィンドウが表示されました。

ここからはコードの解説を書いていきます。

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を使った今どきのアプリ開発 (著者:日向 俊二)