oleh Faisal Reza M
- Intro
Penyunting teks atau editor teks adalah suatu jenis perangkat lunak komputer yang digunakan untuk menyunting teks biasa. Penyunting teks dibedakan dengan pengolah kata (word processor) karena jenis perangkat lunak ini tidak mengatur format dokumen atau fitur-fitur lain yang biasa digunakan dalam penerbitan semeja (desktop publishing). Di sini saya akan memberikan source code editor teks biasa.
2. Text.java
import javax.swing.*;
import java.io.*;
import java.awt.event.*;
import javax.swing.plaf.metal.*;
public class Text extends JFrame implements ActionListener{
JTextArea t;//membuat sebuah halaman yang dapat dimasukkan text
JFrame f;//membuat sebuah frame aplikasi
Text(){//constructor
f = new JFrame("editor");//membuat sebuah frame aplikasi
try{
UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
MetalLookAndFeel.setCurrentTheme(new DefaultMetalTheme());
}catch(Exception e){
}
t = new JTextArea();//membuat sebuah text area
JMenuBar mb = new JMenuBar();//membuat bar menu pada frame
JMenu m1 = new JMenu("File");//membuat opsi pada bar menu bernama "FILE"
//komponen opsi drop down dalam bar menu
JMenuItem mi1 = new JMenuItem("New");//opsi untuk membuat File Baru
JMenuItem mi2 = new JMenuItem("Open");//opsi untuk membuka File Lain
JMenuItem mi3 = new JMenuItem("Save");//opsi untuk save File Baru
JMenuItem mi4 = new JMenuItem("Print");//opsi untuk print File
mi1.addActionListener(this);
mi2.addActionListener(this);
mi3.addActionListener(this);
mi4.addActionListener(this);
//menambahkan tiap opsi-opsi drop down new, open, save dan print ke dalam bar menu
m1.add(mi1);
m1.add(mi2);
m1.add(mi3);
m1.add(mi4);
JMenu m2 = new JMenu("Edit");//membuat opsi pada bar menu bernama "EDIT"
JMenuItem mi5 = new JMenuItem("Cut");//opsi untuk memindahkan teks
JMenuItem mi6 = new JMenuItem("Copy");//opsi untuk menggandakan teks
JMenuItem mi7 = new JMenuItem("Paste");//opsi untuk menempelkan teks
mi5.addActionListener(this);
mi6.addActionListener(this);
mi7.addActionListener(this);
//menambahkan opsi-opsi drop down cut, copy dan paste ke bar menu Edit
m2.add(mi5);
m2.add(mi6);
m2.add(mi7);
//membuat opsi close untuk menutup/ menyudahi file
JMenuItem mc = new JMenuItem("Close");
mc.addActionListener(this);
//menambahkan opsi File, Edit dan Close ke bar menu utama
mb.add(m1);
mb.add(m2);
mb.add(mc);
f.setJMenuBar(mb);//menginisiasi bar menu pada frame
f.add(t);//menambahkan text area pada frame
f.setSize(500,500);//menetapkan ukuran notepad
f.show();//menampilkan notepad
}
public void actionPerformed(ActionEvent e){//perintah-perintah tiap opsi
String s = e.getActionCommand();
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")){
JFileChooser j = new JFileChooser("f:");
int r = j.showSaveDialog(null);
if(r == JFileChooser.APPROVE_OPTION){
File fi = new File(j.getSelectedFile().getAbsolutePath());
try{
FileWriter wr = new FileWriter(fi,false);
BufferedWriter w = new BufferedWriter(wr);
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");
}
}else if(s.equals("Print")){
try{
t.print();
}catch(Exception evt){
JOptionPane.showMessageDialog(f,evt.getMessage());
}
}else if(s.equals("Open")){
JFileChooser j = new JFileChooser("f:");
int r = j.showOpenDialog(null);
if(r == JFileChooser.APPROVE_OPTION){
File fi = new File(j.getSelectedFile().getAbsolutePath());
try{
String s1 = "", sl = "";
FileReader fr = new FileReader(fi);
BufferedReader br = new BufferedReader(fr);
sl = br.readLine();
while((s1 = br.readLine()) != null){
sl = sl + "\n" + s1;
}
t.setText(sl);
}catch(Exception evt){
JOptionPane.showMessageDialog(f,evt.getMessage());
}
}else{
JOptionPane.showMessageDialog(f,"the user cancelled the operation");
}
}else if(s.equals("New")){
t.setText("");
}else if(s.equals("Close")){
t.setVisible(false);
}
}
public static void main (String[] args[]){
Text e = new Text();
}
}
3. Cara penggunaan
a. buka BlueJ
b. masukkan/ ketik source code
c. klik Compile
d. klik kanan di class -> new Text()
4. Tampilan Program
5. File txt yang terbentuk