Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Jadi ini adalah class grid dari Notepad mantap keren bisa bikin jago ngoding anjay
- * jenis yang digunakan adalah file .txt
- * disini mengatur programnya untuk membuka , menyimpan, dan menutup program
- *
- * Author thomasdwi.a
- * Version 20201224
- */
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.io.BufferedWriter;
- import java.io.FileReader;
- import java.io.FileWriter;
- import java.util.Scanner;
- public class grid extends JFrame {
- int fileToOpen;
- int fileToSave;
- JFileChooser fileOpen;
- JFileChooser fileSave;
- grid(){
- // jadi ini bagian constructornya
- MenuBar menuBar = new MenuBar();
- MenuItem menuItem = new MenuItem();
- final JTextArea textArea = new JTextArea();
- setMenuBar(menuBar);
- Menu file = new Menu("file");
- menuBar.add(file);
- MenuItem newOption = new MenuItem("Baru");
- MenuItem buka = new MenuItem("Buka");
- MenuItem simpan = new MenuItem("Simpan");
- MenuItem tutup = new MenuItem("Keluar");
- file.add(newOption);
- file.add(buka);
- file.add(simpan);
- file.add(tutup);
- getContentPane().add(textArea);
- /**
- * method ini berjalaan saat membuat file baru
- */
- newOption.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- textArea.setText("");
- }
- });
- /**
- * method ini berfungsi untuk membuka file yang
- * sudah di buat oleh user
- */
- buka.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- openFile();
- if(fileToOpen == JFileChooser.APPROVE_OPTION){
- textArea.setText(""); //membuat text area
- try{
- //men-scan isi text dan ditampilkan ke notepad keren ini
- Scanner scan = new Scanner(new FileReader(fileOpen.getSelectedFile().getPath()));
- while(scan.hasNext())
- textArea.append(scan.nextLine());
- } catch (Exception ex){
- //jika error, akan menampilkan pesan error
- System.out.println(ex.getMessage());
- }
- }
- }
- });
- /**
- * method ini berfungsi untuk memnyimpan file yang
- * sudah di buat oleh user di notepad
- */
- simpan.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- saveFile();
- if(fileToSave == JFileChooser.APPROVE_OPTION){
- try{
- //men-write text yang sudah dituliskan
- //dan disimpan ke file yang dituju/dibuat
- BufferedWriter out = new BufferedWriter(new FileWriter(fileSave.getSelectedFile().getPath()));
- out.write(textArea.getText());
- out.close();
- }
- catch (Exception ex){
- //jika error, akan menampilkan pesan error
- System.out.println(ex.getMessage());
- }
- }
- }
- });
- /**
- * method ini berfungsi untuk menutup notepad
- */
- tutup.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- System.exit(0);
- }
- });
- }
- /**
- * membuka file chooser saat mau membuka
- * file yang diinginkan
- */
- public void openFile(){
- JFileChooser open = new JFileChooser();
- int option = open.showOpenDialog(this);
- fileToOpen = option;
- fileOpen = open;
- }
- /**
- * membuka file chooser untuk menentukan
- * lokasi penyimpanan file yang diinginkan
- */
- public void saveFile(){
- JFileChooser save = new JFileChooser();
- int option = save.showOpenDialog(this);
- fileToSave = option;
- fileSave = save;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement