我的目的是鼠标点击菜单中的不同等级,窗口中产生的按钮数不同,比如点击了初级,那生成的就是有10x10的按钮数的窗口,点击了中级,就生成有15x15按钮数的窗口,可我的程序好像不执行...
我的目的是鼠标点击菜单中的不同等级,窗口中产生的按钮数不同,比如点击了初级,那生成的就是有10x10的按钮数的窗口,点击了中级,就生成有15x15按钮数的窗口,可我的程序好像不执行我设的事件监听,总是生成初始化时5x5的按钮数窗口,求大神们帮我改一下。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MenuEvent extends JFrame{
private JMenuBar aaa;
private JMenu bbb;
private JPanel panel;
private JButton buttons[][];
int a=5,b=5;
Container c = getContentPane();
public MenuEvent() {
aaa = new JMenuBar();
this.setJMenuBar(aaa);
bbb = new JMenu("选项");
aaa.add(bbb);
JMenuItem ccc = new JMenuItem("初级");
JMenuItem ddd = new JMenuItem("中级");
JMenuItem eee = new JMenuItem("高级");
ccc.addMouseListener(new MouseAdapter() {
public void mouseClicked(ActionEvent e) {
a=10;
b=10;
}
});
bbb.add(ccc);
bbb.addSeparator();
ddd.addMouseListener(new MouseAdapter() {
public void mouseClicked() {
a=15;
b=15;
}
});
bbb.add(ddd);
bbb.addSeparator();
eee.addMouseListener(new MouseAdapter() {
public void mouseClicked() {
a=20;
b=20;
}
});
bbb.add(eee);
buttons=new JButton[a][b];
panel=new JPanel();
panel.setLayout(new GridLayout(a,b,2,2));
for(int i=0;i
for(int j=0;j
buttons[i][j]=new JButton();
panel.add(buttons[i][j]);
}
}
c.add(panel,BorderLayout.CENTER);
setSize(500,500);
setVisible(true);
}
public static void main(String[] args) {
MenuEvent m = new MenuEvent();
}
}
展开