JFrame with JOptionPane example



import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileReader;
import javax.swing.ImageIcon;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;


public class JFrameWithMenu  extends JFrame {

    JMenuBar mb ;
    JMenu mfile, medit, mhelp;
    JMenuItem minew, miopen, misave, miexit, miabout;
    JTextArea jta;
    JFileChooser fch;
    JScrollPane jsp;
    public JFrameWithMenu() {
       
        settingMenu();
        jta = new JTextArea();
       
     
        jta.setText("Testing text....");
        jsp = new JScrollPane(jta);
         add(jsp,BorderLayout.CENTER);
       
        setSize(400,400);
        //setVisible(true);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     
    }
   
    private void settingMenu()
    {
       
        mb =new JMenuBar();
        setJMenuBar(mb);
       
       
        mfile = new JMenu("File"); medit = new JMenu("Edit");
        mhelp = new JMenu("Help");
       
        minew = new JMenuItem("New");
        minew.setMnemonic('N');
       
        miopen = new JMenuItem("Open");
        misave = new JMenuItem("Save");
        miexit = new JMenuItem("Exit");
       
        mb.add(mfile); mb.add(medit); mb.add(mhelp);
       
        mfile.add(minew); mfile.add(miopen); mfile.add(misave);
        mfile.add(miexit);
     
       
        //event to open a file
       
        miopen.addActionListener(
               
                new ActionListener()
                {
                    public void actionPerformed(ActionEvent ae)
                    {
                        fch = new JFileChooser("d://");
                        int openfile =fch.showOpenDialog(miopen);
                       
                        if (openfile==JFileChooser.APPROVE_OPTION)
                        {
                            File myfile =fch.getSelectedFile();
                            try {
                               
                            FileReader fr = new FileReader(myfile);
                            char cbuf[] = new char[(int)myfile.length()];
                            fr.read(cbuf);
                           
                            jta.setText(new String(cbuf));
                           
                           
                            } catch (Exception e) {
                               
                                jta.setText(e.getMessage());
                            }
                           
                           
                        }
                    }
                }
               
               
                );
        // event for exit item
        miexit.addActionListener(
               
                new ActionListener()
                {
                    public void actionPerformed(ActionEvent ae)
                    {
                        int rtype = JOptionPane.showConfirmDialog(miexit, "Do you want to Exit?..","Close ..", JOptionPane.YES_NO_OPTION);
                        if (rtype==JOptionPane.YES_OPTION)
                        System.exit(0);
                       
                    }
               
                }
               
                );
       
        misave.addActionListener(
               
                new ActionListener()
                {
                    public void actionPerformed(ActionEvent ae)
                    {
                        //JOptionPane.showMessageDialog(misave,"Disk Space is low..");
                        JOptionPane.showMessageDialog(null, "Disk space is low", "Warning.", JOptionPane.WARNING_MESSAGE,new ImageIcon("src/images/syncH.png"));
                    }
                }
                );
       
    }

   
    public static void main(String[] args) {
        JFrameWithMenu jf = new JFrameWithMenu();
       
        String uname = JOptionPane.showInputDialog(jf, "Enter Your name..");
        if (uname==null)
        {
            System.out.println("exit...");
            System.exit(0);
        }
        else
        if (uname.equals("istar"))
        {
            jf.setVisible(true);
        }
        else if (!uname.equals("istar") || uname.length()==0)
        {
            System.out.println("enter name again...");
        }
    }
}

Comments

Popular posts from this blog

Custom Exception example for BankAccount

Annotation

Interface with class and interface as member