Pada kesempatan kali ini saya akan membikin sebuah Text Editor simpel dengan memakai bahasa Java. Text Editor merupakan suatu tipe program komputer yang bisa kita pakai untuk membuat, mengganti, menyimpan, serta membuka dokumen- dokumen teks.
Text Editor umumnya telah disediakan pada sistem operasi serta paket- paket pengembangan perangkat lunak. Text Editor bisa digunakan buat mengubah file semacam file konfigurasi, file dokumen, serta file kode sumber dari bahasa pemrograman.
- Sourcecode TextEditor:
import java.awt.*; import javax.swing.*; import java.io.*; import java.awt.event.*; import javax.swing.plaf.metal.*; import javax.swing.text.*; public class TextEditor extends JFrame implements ActionListener { // Text component JTextArea t; // Frame JFrame f; // Constructor TextEditor() { // Create a frame f = new JFrame("Text Editor"); try { // Set metal look and feel UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel"); // Set theme to ocean MetalLookAndFeel.setCurrentTheme(new OceanTheme()); } catch (Exception e) { } // Text component t = new JTextArea(); // Create a menubar JMenuBar mb = new JMenuBar(); // Create a menu for menu JMenu m1 = new JMenu("File"); // Create menu items JMenuItem mi1 = new JMenuItem("New"); JMenuItem mi2 = new JMenuItem("Open"); JMenuItem mi3 = new JMenuItem("Save"); JMenuItem mi9 = new JMenuItem("Print"); // Add action listener mi1.addActionListener(this); mi2.addActionListener(this); mi3.addActionListener(this); mi9.addActionListener(this); m1.add(mi1); m1.add(mi2); m1.add(mi3); m1.add(mi9); // Create a menu for menu JMenu m2 = new JMenu("Edit"); // Create menu items JMenuItem mi4 = new JMenuItem("Cut"); JMenuItem mi5 = new JMenuItem("Copy"); JMenuItem mi6 = new JMenuItem("Paste"); // Add action listener mi4.addActionListener(this); mi5.addActionListener(this); mi6.addActionListener(this); m2.add(mi4); m2.add(mi5); m2.add(mi6); JMenuItem mc = new JMenuItem("Close"); mc.addActionListener(this); mb.add(m1); mb.add(m2); mb.add(mc); f.setJMenuBar(mb); f.add(t); f.setSize(500, 500); f.show(); } public void actionPerformed(ActionEvent e) { String s = e.getActionCommand().toLowerCase(); if (s.equals("cut")) { t.cut(); } else if (s.equals("copy")) { t.copy(); } else if (s.equals("paste")) { t.paste(); } else if (s.equals("save")) { // Create an object of JFileChooser class JFileChooser j = new JFileChooser("c:"); // Invoke the showSaveDialog function to show the save dialog int r = j.showSaveDialog(null); if (r == JFileChooser.APPROVE_OPTION) { // Set the label to the path of the selected directory File fi = new File(j.getSelectedFile().getAbsolutePath()); try { // Create a file writer FileWriter wr = new FileWriter(fi, false); // Create buffered writer to write BufferedWriter w = new BufferedWriter(wr); // Write w.write(t.getText()); w.flush(); w.close(); } catch (Exception evt) { JOptionPane.showMessageDialog(f, evt.getMessage()); } } else JOptionPane.showMessageDialog(f, "The user cancelled the operation"); // If the user cancelled the operation } else if (s.equals("print")) { try { // Print the file t.print(); } catch (Exception evt) { JOptionPane.showMessageDialog(f, evt.getMessage()); } } else if (s.equals("open")) { // Create an object of JFileChooser class JFileChooser j = new JFileChooser("c:"); // Invoke the showOpenDialog function to show the open dialog int r = j.showOpenDialog(null); // If the user selects a file if (r == JFileChooser.APPROVE_OPTION) { // Set the label to the path of the selected directory File fi = new File(j.getSelectedFile().getAbsolutePath()); try { // String String s1 = "", sl = ""; // File reader FileReader fr = new FileReader(fi); // Buffered reader BufferedReader br = new BufferedReader(fr); // Initialize sl sl = br.readLine(); // Take the input from the file while ((s1 = br.readLine()) != null) { sl = sl + "\n" + s1; } // Set the text t.setText(sl); } catch (Exception evt) { JOptionPane.showMessageDialog(f, evt.getMessage()); } } else JOptionPane.showMessageDialog(f, "The user cancelled the operation"); // If the user cancelled the operation } else if (s.equals("new")) { t.setText(""); } else if (s.equals("close")) { f.setVisible(false); } } public static void main(String[] args) { TextEditor te = new TextEditor(); } }
Screenshot akhir program ketika dijalankan:
Terima kasih telah berkunjung. Mohon maaf apabila ada kesalahan dalam penulisan. 😁👍
0 Comments for "Tugas 10 PBO-C "Text Editor" "