import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.IOException;
//java 的图型界面用Netbeans来做。25.16说了,要做的话可以试试,比自己写会方便很多倍
public class FrameDemo {
public static void main(String[] args) {
//创建窗体对象
Frame f=new Frame("more menu");
f.setBounds(600,300,600,300);
//设置布局格式为流体布局
f.setLayout(new FlowLayout());
final String name=f.getTitle();
//创建菜单栏 就是上面那个灰色的长方形
MenuBar mb=new MenuBar();
//创建菜单
Menu m1=new Menu("File");
Menu m2=new Menu("charge name");
//创建菜单项
MenuItem mi1=new MenuItem("good good study");
MenuItem mi2=new MenuItem("day day up");
MenuItem mi3=new MenuItem("Restore original title");
MenuItem mi4=new MenuItem("open txt");
MenuItem mi5=new MenuItem("out this systim");
//将东西设置进面板,看好添加的顺序
m2.add(mi1);
m2.add(mi2);
m2.add(mi3);
m1.add(m2);
m1.add(mi4);
m1.add(mi5);
mb.add(m1);
//设置菜单栏,这个不是用add方法的
f.setMenuBar(mb);
//设置点击事件
mi1.addActionListener(new AbstractAction() {
@Override
public void actionPerformed(ActionEvent e) {
f.setTitle(mi1.getLabel());
}
});
mi2.addActionListener(new AbstractAction() {
@Override
public void actionPerformed(ActionEvent e) {
f.setTitle(mi2.getLabel());
}
});
mi3.addActionListener(new AbstractAction() {
@Override
public void actionPerformed(ActionEvent e) {
f.setTitle(name);
}
});
mi4.addActionListener(new AbstractAction() {
@Override
public void actionPerformed(ActionEvent e) {
Runtime r=Runtime.getRuntime();
try {
r.exec("notepad");
} catch (IOException ex) {
ex.printStackTrace();
}
}
});
mi5.addActionListener(new AbstractAction() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
//设置窗体关闭
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
//设置窗体显示
f.setVisible(true);
}
}
javase学习记录之------一级菜单
最新推荐文章于 2022-05-25 09:39:40 发布