看看我这个词事本程序:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
public class NotePad extends JFrame
{
JMenuBar mainBar;
JMenu menuFile,menuEdit,menuFormat,menuView,menuHelp,menuOpen;
JMenuItem menuItemNew,menuItemSave,menuItemSaveAs,menuItemPageSetup,menuItemPrint,menuItemExit;//File MenuItem
JMenuItem menuItemUndo,menuItemCut,menuItemCopy,menuItemPaste,menuItemDelete,menuItemFind,menuItemFindNext; //Edit MenuItem
JMenuItem menuItemReplace,menuItemJump,menuItemSelectAll,menuItemDate;
JCheckBoxMenuItem menuItemLineWrap;
JMenuItem menuItemFont;//Format MenuItem
JMenuItem menuItemStateBar;//View MenuItem
JMenuItem menuItemHelpSubject,menuItemCopyright;//Help MenuItem
JMenuItem menuItemSwingDialog,menuItemAwtDialog;
JScrollPane scrpan;
JTextArea txtBox;
NotePad()
{
setTitle("NotePad");
Container c=this.getContentPane();
mainBar=new JMenuBar();
menuFile=new JMenu("File");
menuEdit=new JMenu("Edit");
menuFormat=new JMenu("Format");
menuView=new JMenu("View");
menuHelp=new JMenu("Help");
menuItemNew=new JMenuItem("New");
menuOpen=new JMenu("Open");
menuItemSave=new JMenuItem("Save");
menuItemSaveAs=new JMenuItem("Save As...");
menuItemPageSetup=new JMenuItem("PageSetup...");
menuItemPrint=new JMenuItem("Print...");
menuItemExit=new JMenuItem("Exit");
menuItemUndo=new JMenuItem("Undo");
menuItemCut=new JMenuItem("Cut");
menuItemCopy=new JMenuItem("Copy");
menuItemPaste=new JMenuItem("Paste");
menuItemDelete=new JMenuItem("Delete");
menuItemFind=new JMenuItem("Find...");
menuItemFindNext=new JMenuItem("Find Next");
menuItemReplace=new JMenuItem("Replace...");
menuItemJump=new JMenuItem("Jump...");
menuItemSelectAll=new JMenuItem("Select All");
menuItemDate=new JMenuItem("Date");
menuItemLineWrap=new JCheckBoxMenuItem("Line Wrap",false);
menuItemFont=new JMenuItem("Font");
menuItemStateBar=new JMenuItem("StateBar");
menuItemHelpSubject=new JMenuItem("Help Subject");
menuItemCopyright=new JMenuItem("Copyright");
menuItemAwtDialog=new JMenuItem("Awt Dialog");
menuItemSwingDialog=new JMenuItem("Swing Dialog");
//
txtBox=new JTextArea("",24,40);
txtBox.setLineWrap(false);
scrpan=new JScrollPane(txtBox);
//
menuOpen.add(menuItemSwingDialog);
menuOpen.add(menuItemAwtDialog);
menuFile.add(menuItemNew);
menuFile.add(menuOpen);
menuFile.add(menuItemSave);
menuFile.add(menuItemSaveAs);
menuFile.addSeparator();
menuFile.add(menuItemPageSetup);
menuFile.add(menuItemPrint);
menuFile.addSeparator();
menuFile.add(menuItemExit);
//
menuEdit.add(menuItemUndo);
menuEdit.addSeparator();
menuEdit.add(menuItemCut);
menuEdit.add(menuItemCopy);
menuEdit.add(menuItemPaste);
menuEdit.add(menuItemDelete);
menuEdit.addSeparator();
menuEdit.add(menuItemFind);
menuEdit.add(menuItemFindNext);
menuEdit.add(menuItemReplace);
menuEdit.add(menuItemJump);
menuEdit.addSeparator();
menuEdit.add(menuItemSelectAll);
menuEdit.add(menuItemDate);
//
menuFormat.add(menuItemLineWrap);
menuFormat.add(menuItemFont);
//
menuView.add(menuItemStateBar);
//
menuHelp.add(menuItemHelpSubject);
menuHelp.addSeparator();
menuHelp.add(menuItemCopyright);
//
mainBar.add(menuFile);
mainBar.add(menuEdit);
mainBar.add(menuFormat);
mainBar.add(menuView);
mainBar.add(menuHelp);
this.setJMenuBar(mainBar);
c.add(scrpan);
setSize(400,300);
// add LineWrap ActionListener
menuItemLineWrap.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
boolean state=menuItemLineWrap.getState();
txtBox.setLineWrap(state);
}
});
//add menuItemNew ActionListener
menuItemNew.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
txtBox.setText("");
}
});
//add menuItemSwingDialog、menuItemSwtDialog ActionListener
menuItemAwtDialog.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
FileDialog openDia=new FileDialog(NotePad.this,"File Dialog");
openDia.setVisible(true);
}
});
menuItemSwingDialog.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
JFileChooser openDia=new JFileChooser();
openDia.showDialog(NotePad.this,"File Dialog");
}
});
// add menuItemExit ActionListener
menuItemExit.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
});
}
}
class mainApp
{
public static void main(String[] args)
{
NotePad frm=new NotePad();
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.show();
}
}