TaskAppJava
🧩 Syntax:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.*;
import java.util.List;
public class Frame extends JFrame implements ActionListener
{
JFrame window;
JButton addTask;
JTextField taskName;
JPanel taskAddPanel, taskDisplayPanel;
DefaultListModel<Task> activeTasks;
JList<Task> activeTaskDisplay;
JScrollPane scrollPane;
Frame()
{
window = new JFrame("To Do app");
window.setLayout(new BorderLayout());
activeTasks = new DefaultListModel<>();
addTask = new JButton("Add Task");
taskName = new JTextField(10);
taskAddPanel = new JPanel();
taskDisplayPanel = new JPanel();
activeTaskDisplay = new JList<Task>();
scrollPane = new JScrollPane();
activeTaskDisplay.setVisible(true);
taskAddPanel.add(taskName);
taskAddPanel.add(addTask);
scrollPane.setViewportView(activeTaskDisplay);
activeTaskDisplay.setLayoutOrientation(JList.VERTICAL);
taskDisplayPanel.add(scrollPane);
addTask.addActionListener(this);
window.add(taskAddPanel, BorderLayout.NORTH);
window.add(taskDisplayPanel, BorderLayout.CENTER);
window.setMinimumSize(new Dimension(800,600));
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e)
{
if(e.getSource() == addTask)
{
if(taskName.getText() != null && !taskName.getText().isEmpty())
{
activeTaskDisplay.setModel(activeTasks);
activeTasks.addElement(new Task(taskName.getText()));
System.out.println("dupa");
}
}
}
}
//TASK CLASS
public class Task
{
String name;
private boolean isFinished;
Task(String name)
{
this.name = name;
isFinished = false;
}
boolean isFinished()
{
return isFinished;
}
void finish()
{
isFinished = true;
}
}