📄 menucontrol.java
字号:
/*2005.5
菜单控制
devilyx
*/
import java.awt.*;
import java.awt.event.*;
public class fileclose //定义主类
{
public static void main(String args[])
{
MyMenuFrame mf = new MyMenuFrame();
mf.setSize(new Dimension(300,200)); //用setSize()方法指定窗口的初始大小
mf.setVisible(true); //使窗口可见
}
}
class MyMenuFrame extends Frame implements ActionListener,TextListener// //定义窗口
{
MenuBar m_MenuBar;
Menu menuFile,menuEdit,menuHelp;
MenuItem pi_close,pi_open,pi_exit;
TextArea ta;
boolean textMod=false;
String orgMsg="原始信息";
Button confirmBtn,denyBtn,q;
Dialog conDialog;
MyMenuFrame() //构造函数
{
super("菜单窗口"); //指定窗口标题
confirmBtn=new Button("yes");
denyBtn=new Button("no");
q=new Button("q");
confirmBtn.addActionListener(this);
denyBtn.addActionListener(this);
q.addActionListener(this);
q.setActionCommand("q");
Panel p3=new Panel();
ta=new TextArea(5,15);
ta.setText(orgMsg);
ta.addTextListener(this);
//ta.addFocusListener(this);
this.add(p3);
p3.add("Center",q);
p3.add("South",ta);
m_MenuBar = new MenuBar();//创建菜单条
menuFile = new Menu("文件");//创建菜单项,创建菜单子项并指定快捷键
menuEdit = new Menu("编辑");
menuHelp = new Menu("帮助");
pi_open = new MenuItem(" open ");
pi_open.addActionListener(this);
pi_open.setActionCommand("open");
pi_close = new MenuItem(" close ");
pi_close.addActionListener(this);
pi_close.setActionCommand("close");
pi_exit = new MenuItem(" exit ");
pi_exit.addActionListener(this);
pi_exit.setActionCommand("exit");
menuFile.add(pi_open);
menuFile.add(pi_close);
menuFile.addSeparator();
menuFile.add(pi_exit);
m_MenuBar.add(menuFile);
m_MenuBar.add(menuEdit);
m_MenuBar.add(menuHelp);
this.setMenuBar(m_MenuBar);
addWindowListener(new closeWindow());
}
public void actionPerformed(ActionEvent e)//响应动作事件
{
if(e.getSource()==confirmBtn)
{
ta.setText(ta.getText());
textMod=false;
conDialog.dispose();
}
else if(e.getSource()==denyBtn)
{
ta.setText(orgMsg);
textMod=false;
conDialog.dispose();
}
else if(e.getActionCommand()=="exit")//选择"退出"菜单则关闭窗口退出程序
{
dispose();
System.exit(0);
}
else if(e.getActionCommand()=="q" )
{
if(textMod)
{
conDialog=new Dialog(this,"确认修改",true);
Panel p1=new Panel();
p1.add(new Label("确定修改文本内容?"));
conDialog.add("Center",p1);
Panel p2=new Panel();
p2.add(confirmBtn);
p2.add(denyBtn);
conDialog.add("South",p2);
conDialog.setSize(200,100);
conDialog.show();
}
}
}
public void textValueChanged(TextEvent e)//响应CheckboxMenuItem单击事件
{
textMod=true;
}
class closeWindow extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
Frame frm=(Frame)e.getWindow();
frm.dispose();
System.exit(0);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -