📄 menu1.java
字号:
import java.awt.event.*;
import java.awt.*;
public class Menu1 extends Frame implements ActionListener {
Menu menu1;
Menu menu2;
Menu menu3,menu4;
MenuItem MenuItem1 , MenuItem2 ;
MenuItem MenuItem3 , MenuItem4 ;
MenuItem MenuItem5 , MenuItem6 ;
MenuItem MenuItem7, MenuItem8 ,MenuItem9, MenuItem10 ;
CheckboxMenuItem MenuItem11 ,MenuItem12 ;
Label label1;
public Menu1(String ss) {
super(ss);
label1=new Label("init");
add(label1);
MenuBar mb = new MenuBar();
menu1 = new Menu("文件");
MenuItem1=new MenuItem("新建(N)");
MenuItem1.addActionListener(this);
menu1.add(MenuItem1);
MenuItem2=new MenuItem("打开(哦)(O)");
MenuItem2.addActionListener(this);
menu1.add(MenuItem2);
menu1.addSeparator();
MenuItem3=new MenuItem("保存(S)");
MenuItem3.addActionListener(this);
menu1.add(MenuItem3);
MenuItem4=new MenuItem("另存为");
MenuItem4.addActionListener(this);
menu1.add(MenuItem4);
menu1.addSeparator();
MenuItem5=new MenuItem("打印");
MenuItem5.setEnabled(false);
MenuItem5.addActionListener(this);
menu1.add(MenuItem5);
MenuItem6=new MenuItem("退出(Q)");
MenuItem6.addActionListener(this);
menu1.add(MenuItem6);
mb.add(menu1);
menu2 = new Menu("编辑");
MenuItem7=new MenuItem("剪切(X)");
MenuItem7.addActionListener(this);
menu2.add(MenuItem7);
MenuItem8=new MenuItem("复制(C)");
MenuItem8.addActionListener(this);
menu2.add(MenuItem8);
MenuItem9=new MenuItem("粘贴(V)");
MenuItem9.addActionListener(this);
menu2.add(MenuItem9);
mb.add(menu2);
menu3 = new Menu("查看");
MenuItem10 = new MenuItem("选项");
MenuItem10.addActionListener(this);
menu3.add(MenuItem10);
menu4 = new Menu("工具栏");
MenuItem11=new CheckboxMenuItem("常用",true);
MenuItem11.addItemListener(new ItemListener(){
public void itemStateChanged(ItemEvent e){
processAction(e);}
});
menu4.add(MenuItem11);
MenuItem12=new CheckboxMenuItem("格式",false);
MenuItem12.addItemListener(new ItemListener(){
public void itemStateChanged(ItemEvent e){
processAction(e);}
});
menu4.add(MenuItem12);
menu3.add(menu4);
mb.add(menu3);
setMenuBar(mb);
addKeyListener( new KeyListener(){
public void keyPressed(KeyEvent e){
int nKeycode=e.getKeyCode();
String keyText=e.getKeyText(nKeycode);
if(keyText.equals("N")){
label1.setText("新建"); }
if(keyText.equals("O")){
label1.setText("打开"); }
if(keyText.equals("S")){
label1.setText("保存"); }
if(keyText.equals("X")){
label1.setText("剪切"); }
if(keyText.equals("C")){
label1.setText("复制"); }
if(keyText.equals("V")){
label1.setText("粘贴"); }
if(keyText.equals("Q")){
System.exit(0); }
}
public void keyReleased(KeyEvent e){}
public void keyTyped(KeyEvent e){}
});
show();
}
public void actionPerformed(ActionEvent e){
if(e.getSource()== MenuItem1)
{ label1.setText("新建");}
if(e.getSource()== MenuItem2)
{ label1.setText("打开");}
if(e.getSource()== MenuItem3)
{ label1.setText("保存");}
if(e.getSource()== MenuItem4)
{ label1.setText("另存为");}
if(e.getSource()== MenuItem5)
{ label1.setText("打印");}
if(e.getSource()== MenuItem6)
{ System.exit(0);}
if(e.getSource()== MenuItem7)
{ label1.setText("剪切");}
if(e.getSource()== MenuItem8)
{ label1.setText("复制");}
if(e.getSource()== MenuItem9)
{ label1.setText("粘贴");}
if(e.getSource()== MenuItem10)
{ label1.setText("选项");}
}
public void processAction(ItemEvent e){
String name=(String)e.getItem();
if (name=="常用"){
{if (e.getStateChange()==e.SELECTED)
{label1.setText("常用 selected!");}
if (e.getStateChange()==e.DESELECTED)
{label1.setText("常用 deselected!");}
}
}
if (name=="格式"){
{if (e.getStateChange()==e.SELECTED)
{label1.setText("格式 selected!");}
if (e.getStateChange()==e.DESELECTED)
{label1.setText("格式 deselected!");}
}
}
}
public Dimension getPreferredSize()
{
return new Dimension(300,300);
}
public static void main(String args[]) {
Menu1 nowFrame=new Menu1("example menu");
nowFrame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
nowFrame.pack();
nowFrame.show();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -