Notepad
Hello friends, we are going to make a simple notepad in this project. Open your IntelliJ or any other IDE and create a new Project. Now, name this project whatever you likes and go to Main.java file.
Now, write the following code in Main.java
Main.java :
import javax.swing.*;
public class Main {
public static void main(String[] args) {
new Notepad();
}
}
public class Main {
public static void main(String[] args) {
new Notepad();
}
}
Now, go to Projects tab.
Right Click on src folder, go to New and Click on JAVA Class.
Name the new JAVA Class as Notepad.java
Write the following code in Notepad.java.
Notepad.java :
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
public class Notepad extends JPanel {
JFrame frame = new JFrame();
JTextArea textArea = new JTextArea(23,23);
JScrollPane jScrollPane = new JScrollPane(textArea);
JPanel container;
JMenuBar menuBar = new JMenuBar();
JMenu file = new JMenu("File");
JMenuItem newFile = new JMenuItem("New");
JMenuItem newWindow = new JMenuItem("New Window");
JMenuItem openFile = new JMenuItem("Open");
JMenuItem saveFile = new JMenuItem("Save");
JMenuItem exit = new JMenuItem("Exit");
JMenu help = new JMenu("Help");
public Notepad() {
frame.setBounds(100, 100, 600, 600);
frame.setTitle("My Notepad");
container = new JPanel();
container.setLayout(new BoxLayout(container, BoxLayout.Y_AXIS));
menuBar.add(file);
file.add(newFile);
newFile.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textArea.setText("Welcome to my Notepad.");
}
});
file.add(newWindow);
newWindow.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new Notepad();
}
});
file.add(openFile);
openFile.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser fileChooser = new JFileChooser("c:");
int i = fileChooser.showOpenDialog(null);
if (i == JFileChooser.APPROVE_OPTION) {
File file = new File(fileChooser.getSelectedFile().getAbsolutePath());
try {
String str = "", sline = "";
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
sline = bufferedReader.readLine();
while ((str = bufferedReader.readLine()) != null) {
sline = sline + "\n" + str;
}
textArea.setText(sline);
} catch (Exception ev) {
JOptionPane.showMessageDialog(frame, ev.getMessage());
}
}
}
});
file.add(saveFile);
saveFile.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser fileChooser = new JFileChooser("c:");
int i = fileChooser.showSaveDialog(null);
if (i == JFileChooser.APPROVE_OPTION) {
File file = new File(fileChooser.getSelectedFile().getAbsolutePath());
try {
FileWriter fileWriter = new FileWriter(file, false);
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
bufferedWriter.write(textArea.getText());
bufferedWriter.flush();
bufferedWriter.close();
} catch (Exception ex) {
JOptionPane.showMessageDialog(frame, ex.getMessage());
}
}
}
});
file.add(exit);
exit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
frame.setVisible(false);
}
});
menuBar.add(help);
menuBar.setLayout(new FlowLayout(FlowLayout.LEFT));
container.add(menuBar);
textArea.setFont(new Font("Serif", Font.ITALIC, 16));
container.add(jScrollPane);
frame.setContentPane(container);
frame.setVisible(true);
}
}
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
public class Notepad extends JPanel {
JFrame frame = new JFrame();
JTextArea textArea = new JTextArea(23,23);
JScrollPane jScrollPane = new JScrollPane(textArea);
JPanel container;
JMenuBar menuBar = new JMenuBar();
JMenu file = new JMenu("File");
JMenuItem newFile = new JMenuItem("New");
JMenuItem newWindow = new JMenuItem("New Window");
JMenuItem openFile = new JMenuItem("Open");
JMenuItem saveFile = new JMenuItem("Save");
JMenuItem exit = new JMenuItem("Exit");
JMenu help = new JMenu("Help");
public Notepad() {
frame.setBounds(100, 100, 600, 600);
frame.setTitle("My Notepad");
container = new JPanel();
container.setLayout(new BoxLayout(container, BoxLayout.Y_AXIS));
menuBar.add(file);
file.add(newFile);
newFile.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textArea.setText("Welcome to my Notepad.");
}
});
file.add(newWindow);
newWindow.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new Notepad();
}
});
file.add(openFile);
openFile.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser fileChooser = new JFileChooser("c:");
int i = fileChooser.showOpenDialog(null);
if (i == JFileChooser.APPROVE_OPTION) {
File file = new File(fileChooser.getSelectedFile().getAbsolutePath());
try {
String str = "", sline = "";
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
sline = bufferedReader.readLine();
while ((str = bufferedReader.readLine()) != null) {
sline = sline + "\n" + str;
}
textArea.setText(sline);
} catch (Exception ev) {
JOptionPane.showMessageDialog(frame, ev.getMessage());
}
}
}
});
file.add(saveFile);
saveFile.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser fileChooser = new JFileChooser("c:");
int i = fileChooser.showSaveDialog(null);
if (i == JFileChooser.APPROVE_OPTION) {
File file = new File(fileChooser.getSelectedFile().getAbsolutePath());
try {
FileWriter fileWriter = new FileWriter(file, false);
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
bufferedWriter.write(textArea.getText());
bufferedWriter.flush();
bufferedWriter.close();
} catch (Exception ex) {
JOptionPane.showMessageDialog(frame, ex.getMessage());
}
}
}
});
file.add(exit);
exit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
frame.setVisible(false);
}
});
menuBar.add(help);
menuBar.setLayout(new FlowLayout(FlowLayout.LEFT));
container.add(menuBar);
textArea.setFont(new Font("Serif", Font.ITALIC, 16));
container.add(jScrollPane);
frame.setContentPane(container);
frame.setVisible(true);
}
}
Other JAVA projects :
Ball Game using JAVA
Simple Clock using JAVA
Chat Application using JAVA
Bouncing Ball using JAVA