「Javaを学び始めたけど、実用的なアプリを作るのが難しい」
「一覧で管理できるツールを作ってみたいけど、何から始めればよいかわからない」
そんな悩みをお持ちの方にぴったりなのが、ToDoリストアプリの作成です。
本記事では、Javaで簡単にToDoリストを作る方法をGUI付きで丁寧に解説します。
Swingライブラリを使って画面を作り、入力・削除・一覧表示ができるアプリを完成させます。
誰でも作れる構成とコード付きの解説で、Java初学者が最初の実用アプリを作る手助けをします!
JavaでToDoリストを作る理由
なぜToDoリストが学習に適しているのか?
結論:入力・保存・表示・削除といった基本操作がすべて学べるからです。
Javaを勉強し始めた方にとって、どのようなアプリを作るか悩むことが多いです。
ToDoリストは以下の点で初心者にぴったりです。
- 入力フォームからデータを受け取る方法が学べる
- リスト表示で配列やリストの扱いが理解できる
- 削除や完了処理でイベント処理に慣れることができる
- 簡単なGUIでも実用的なものを作れる
このようにToDoリストはJavaの基礎を自然に学べる絶好の教材なのです。
GUIアプリに必要な構成とは?
Swingを使ったシンプルな設計図
結論:テキスト入力欄、追加ボタン、リスト表示、削除ボタンがあればOKです。
ToDoリストアプリの構成要素は次の通りです。
JTextField
:やることを入力JButton(追加)
:リストに追加JList
orDefaultListModel
:リスト表示JButton(削除)
:選んだ項目を削除
構成イメージは以下のようになります。
JFrame(全体)
├── JPanel(上部)
│ ├── JTextField(入力)
│ └── JButton(追加)
├── JScrollPane
│ └── JList(ToDo表示)
└── JButton(削除)
ToDoリストアプリの基本機能
入力→追加→削除までの流れ
結論:ボタンとイベントリスナーを使って、動的にリストを更新します。
ユーザーが行う操作と処理の関係:
- 入力 →
JTextField.getText()
で取得 - ボタン押下 →
ActionListener
でイベント処理 - リスト追加 →
DefaultListModel.addElement()
- リスト削除 →
model.remove(index)
この流れが分かると、どんなGUIアプリにも応用が利くようになります。
JavaでToDoリストを実装するコード
コピペで動くGUI付きの完成コード
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class ToDoApp extends JFrame implements ActionListener {
private DefaultListModel<String> model;
private JList<String> list;
private JTextField input;
private JButton addBtn, deleteBtn;
public ToDoApp() {
setTitle("ToDoリスト");
setSize(400, 300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new BorderLayout());
input = new JTextField(20);
addBtn = new JButton("追加");
deleteBtn = new JButton("削除");
addBtn.addActionListener(this);
deleteBtn.addActionListener(this);
JPanel topPanel = new JPanel();
topPanel.add(input);
topPanel.add(addBtn);
model = new DefaultListModel<>();
list = new JList<>(model);
JScrollPane scrollPane = new JScrollPane(list);
add(topPanel, BorderLayout.NORTH);
add(scrollPane, BorderLayout.CENTER);
add(deleteBtn, BorderLayout.SOUTH);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == addBtn) {
String task = input.getText().trim();
if (!task.isEmpty()) {
model.addElement(task);
input.setText("");
}
} else if (e.getSource() == deleteBtn) {
int index = list.getSelectedIndex();
if (index != -1) {
model.remove(index);
}
}
}
public static void main(String[] args) {
new ToDoApp();
}
}
ファイル構成と実行手順
必要なファイルと準備
ToDoApp.java
(上記コード)
実行方法は以下の通りです。
javac ToDoApp.java
java ToDoApp
Javaがインストールされていれば、すぐに実行可能です。
まとめ:ToDoリスト開発で得られる力
この記事で学べたことは次の通りです:
- JavaのGUI設計(Swingの使い方)
- イベント処理(ActionListener)
- 配列ではなく
DefaultListModel
を使う動的なリスト管理 - 実用的なアプリを作る手順と構造