在Swing组件中添加右键菜单无须像AWT中那样繁琐,只需要简单地调用setComponentPopupMenu 方法来设置右键菜单即可,无须编写事件监听器。由此可见,使用Swing组件编写图形界面程序更加简单。
public class TestJPopupMenu
{
JFrame f=new JFrame("测试");
JTextArea ta=new JTextArea(3,20);
JPopupMenu pop=new JPopupMenu();
ButtonGroup flavorGroup=new ButtonGroup();
JRadioButtonMenuItem metalItem=new JRadioButtonMenuItem("Metal风格",true);
JRadioButtonMenuItem windowItem=new JRadioButtonMenuItem("window风格");
JRadioButtonMenuItem motifItem=new JRadioButtonMenuItem("Motif风格");
public void init()
{
f.add(ta);
flavorGroup.add(metalItem);
flavorGroup.add(windowItem);
flavorGroup.add(motifItem);
pop.add(metalItem);
pop.add(windowItem);
pop.add(motifItem);
//加上这句就给ta添加了右键菜单
ta.setComponentPopupMenu(pop);
//加上这句给JFrame f 添加关闭窗口事件
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.pack();
f.setVisible(true);
}
public static void main(String[] args)
{
new TestPopupMenu().init();
}
}
在JTextArea ta 加上setComponentPopupMenu(),就给ta加上了右键菜单。