【Java开源代码栏目提醒】:网学会员鉴于大家对Java开源代码十分关注,论文会员在此为大家搜集整理了“TextEditDemo.java”一文,供大家参考学习
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import static java.awt.event.InputEvent.*;
public class TextEditDemo extends JFrame implements ActionListener {
JMenuBar bar ;
static int count = 0 ;
JMenu fileMenu,editMenu,formMenu,helpMenu ;
JMenuItem newItem,openItem,saveItem,exitItem,
undoItem,delectItem,copyItem,pasteItem,
fontItem,aboutSubjectItem,aboutNoteBookItem ;
JTextArea textArea ;
public TextEditDemo(String title)
{
super(title) ;
//**************************************
bar = new JMenuBar() ;
fileMenu = new JMenu("文件") ;
editMenu = new JMenu("编辑") ;
formMenu = new JMenu("格式") ;
helpMenu = new JMenu("帮助") ;
//**************************************
newItem = new JMenuItem("新建") ;
openItem = new JMenuItem("打开") ;
saveItem = new JMenuItem("保存") ;
exitItem = new JMenuItem("退出") ;
//**************************************
undoItem = new JMenuItem("撤消") ;
delectItem = new JMenuItem("删除") ;
copyItem = new JMenuItem("复制") ;
pasteItem = new JMenuItem("粘贴") ;
//**************************************
fontItem = new JMenuItem("字体") ;
aboutSubjectItem = new JMenuItem("关于主题") ;
aboutNoteBookItem = new JMenuItem("关于记事本") ;
//**************************************
//fileMenu.set
//**************************************
newItem.addActionListener(this) ;
openItem.addActionListener(this) ;
saveItem.addActionListener(this) ;
exitItem.addActionListener(this) ;
//加速键
newItem.setAccelerator(KeyStroke.getKeyStroke('N',CTRL_DOWN_MASK)) ;
openItem.setAccelerator(KeyStroke.getKeyStroke('O',CTRL_DOWN_MASK)) ;
saveItem.setAccelerator(KeyStroke.getKeyStroke('S',CTRL_DOWN_MASK)) ;
exitItem.setAccelerator(KeyStroke.getKeyStroke('Q',CTRL_DOWN_MASK)) ;
fileMenu.add(newItem) ;
fileMenu.add(openItem) ;
fileMenu.add(saveItem) ;
fileMenu.addSeparator() ;//分隔线
fileMenu.add(exitItem) ;
//**************************************
undoItem.addActionListener(this) ;
delectItem.addActionListener(this) ;
copyItem.addActionListener(this) ;
pasteItem.addActionListener(this) ;
undoItem.setAccelerator(KeyStroke.getKeyStroke('Z',CTRL_DOWN_MASK)) ;
delectItem.setAccelerator(KeyStroke.getKeyStroke('D',CTRL_DOWN_MASK)) ;
copyItem.setAccelerator(KeyStroke.getKeyStroke('C',CTRL_DOWN_MASK)) ;
pasteItem.setAccelerator(KeyStroke.getKeyStroke('V',CTRL_DOWN_MASK)) ;
editMenu.add(undoItem) ;
editMenu.add(delectItem) ;
editMenu.add(copyItem) ;
editMenu.add(pasteItem) ;
//**************************************
fontItem.addActionListener(this) ;
aboutSubjectItem.addActionListener(this) ;
aboutNoteBookItem.addActionListener(this) ;
formMenu.add(fontItem) ;
helpMenu.add(aboutSubjectItem) ;
helpMenu.add(aboutNoteBookItem) ;
//**************************************
//快捷键
fileMenu.setMnemonic('F') ;
editMenu.setMnemonic('E') ;
formMenu.setMnemonic('Q') ;
helpMenu.setMnemonic('H') ;
bar.add(fileMenu) ;
bar.add(editMenu) ;
bar.add(formMenu) ;
bar.add(helpMenu) ;
//**************************************
this.setJMenuBar(bar) ;
this.setLocation(100, 100) ;
this.setSize(400, 300) ;
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) ;
this.setLayout(new BorderLayout()) ;
textArea = new JTextArea() ;
Container con = this.getContentPane() ;
con.add(textArea,BorderLayout.CENTER) ;
this.setVisible(true) ;
}
public void actionPerformed(ActionEvent e) {
JMenuItem menuItem = (JMenuItem)e.getSource() ;
if(menuItem == newItem)
{
new TextEditDemo ("文本编辑器" + ++count) ;
}
else if(menuItem == openItem)
{
FileDialog fd = new FileDialog(this,"打开",FileDialog.LOAD) ;
fd.show() ;
}
else if(menuItem == saveItem)
{
FileDialog fd = new FileDialog(this,"打开",FileDialog.SAVE) ;
fd.show() ;
}
else if(menuItem == exitItem)
{
System.exit(0) ;
}
}
public static void main(String[] args) {
new TextEditDemo("文本编辑器" + ++count) ;
}
}
上一篇:
TextEditClass.java
下一篇:
ASP小区停车管理系统(Access)(含录像)