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
Post a Comment