Friday, 9 May 2014

NotePad

This tutorial is on how to create a simple Notepad application in Java. we can create a basic notepad model.My aim is to show how to create a simple notepad by make use of awt,swings and stuff.The code show to make a simple notepad.












Download Code

import java.io.DataInputStream;
import java.io.FileInputStream;
import java.awt.FileDialog;
import java.awt.GridLayout;
import java.awt.Dimension;
import java.awt.BorderLayout;
import java.awt.event.KeyEvent;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.KeyStroke;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.JDialog;
import javax.swing.JTextField;
import javax.swing.UIManager;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;


class NotePad extends JFrame implements ActionListener

{
JTextArea text_area;
JMenuBar menu_bar;
JMenu file,edit,format,view,help;
JMenuItem New,open,save,save_as,exit,cut,copy,paste,delete,select_all,
font;
Object source_object;
DataInputStream dis;
String selected_text,text,file_name;
int cursur_start,cursur_end;
NotePad()
{
setTitle("Untitled-NotePad");
setSize(1000,1000);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
text_area=new JTextArea();
add(text_area);
menu_bar=new JMenuBar();
setJMenuBar(menu_bar);
menu_bar.setBorderPainted(true);
// add menuitems to menu
file=new JMenu("File");
file.setMnemonic(KeyEvent.VK_F);
New=new JMenuItem("New");
open=new JMenuItem("Open...");
save=new JMenuItem("Save");
save_as=new JMenuItem("save as");
exit=new JMenuItem("Exit");
New.setAccelerator(KeyStroke.getKeyStroke("control N"));
open.setAccelerator(KeyStroke.getKeyStroke("control O"));
save.setAccelerator(KeyStroke.getKeyStroke("control S"));
exit.setAccelerator(KeyStroke.getKeyStroke("alt F4 "));
New.addActionListener(this);
open.addActionListener(this);
save.addActionListener(this);
save_as.addActionListener(this);
exit.addActionListener(this);
file.addSeparator();
file.add(New);
file.add(open);
file.add(save);
file.add(save_as);
file.add(exit);
edit=new JMenu("Edit");
edit.setMnemonic(KeyEvent.VK_E);
edit.addSeparator();
copy=new JMenuItem("Copy");
cut=new JMenuItem("Cut");
paste=new JMenuItem("Paste");
delete=new JMenuItem("Delete");
select_all=new JMenuItem("Select All");
copy.addActionListener(this);
cut.addActionListener(this);
paste.addActionListener(this);
delete.addActionListener(this);
select_all.addActionListener(this);
copy.setAccelerator(KeyStroke.getKeyStroke("control C"));
cut.setAccelerator(KeyStroke.getKeyStroke("control X"));
paste.setAccelerator(KeyStroke.getKeyStroke("control V"));
delete.setAccelerator(KeyStroke.getKeyStroke("del"));
select_all.setAccelerator(KeyStroke.getKeyStroke("control A"));
edit.add(copy);
edit.add(cut);
edit.add(paste);
edit.add(delete);
edit.add(select_all);
format=new JMenu("Format");
format.setMnemonic(KeyEvent.VK_O);
font=new JMenuItem("Font...");
font.addActionListener(this);
format.add(font);
view=new JMenu("View");
view.setMnemonic(KeyEvent.VK_V);
help=new JMenu("Help");
help.setMnemonic(KeyEvent.VK_H);
menu_bar.add(file);
menu_bar.add(edit);
menu_bar.add(format);
menu_bar.add(view);
menu_bar.add(help);
}
  public void actionPerformed(ActionEvent ae)
{
source_object=ae.getSource();
//open menu_item code
if(source_object==open)
{
FileDialog file_dialog = new FileDialog(this,"select File",FileDialog.LOAD);
file_dialog.setVisible(true);
file_name=file_dialog.getFile();
setTitle(file_name);
try
{
dis=new DataInputStream(new FileInputStream(file_name));
text="";
int x;
while((x=dis.read())!=-1)
{
text=((char)x+"");
text_area.append(text);
   }//end of the while loop
}//end of the try block
                     catch(Exception e)
                        {
System.out.println("Exception"+e);
                           }//end of the catch block
}//end of the open if block

//exit menu_item code
else if(source_object==exit)
{
System.exit(0);
}
//New menu_item code
else if(source_object==New)
{
new NotePad();
}
//save menu_item code
else if(source_object==save)
{
}
//copy menu_item code
else if(source_object==copy)
{
selected_text=text_area.getSelectedText();
}
//cut menu_item code
else if(source_object==cut)
{
selected_text=text_area.getSelectedText();
cursur_start=text_area.getSelectionStart();
cursur_end=text_area.getSelectionEnd();
text_area.replaceRange("",cursur_start,cursur_end);
}
//paste menu_item code
else if(source_object==paste)
{
cursur_start=text_area.getSelectionStart();
text_area.insert(selected_text,cursur_start);
}
//delete menu_item code
else if(source_object==delete)
{
cursur_start=text_area.getSelectionStart();
cursur_end=text_area.getSelectionEnd();
text_area.replaceRange("",cursur_start,cursur_end);
}
//select_all menu_item code
else if(source_object==select_all)
{
text_area.selectAll();
}
//font menu_item code
else if(source_object==font)
{
new Font();
}

}//end of the actionPerfromed ();

}//end of the notepad class
 
class NotePadDemo
{
public static void main(String args[])throws Exception
{
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
new NotePad();
}
}   

3 comments: