【发布时间】:2011-11-15 21:56:21
【问题描述】:
所以我有一个 JMenu,里面有几个子菜单。这些菜单的名称是通过获取 4 位玩家中的 1 位玩家的名称来设置的。我向 JMenu 添加了一个 MenuListener 以使用
更新这些名称menu.setName(player.getName());
但是,名称正在更改,但更新未显示在菜单中。如何获取菜单以更新其显示?
editMenu.addMenuListener(new MenuListener() {
public void menuSelected(MenuEvent e) {
updateMenu();
}
public void menuDeselected(MenuEvent e) {
}
public void menuCanceled(MenuEvent e) {
}
});
和updateMenu方法:
public void updateMenu()
{
partOneMenu.setName(Participant1.getName());
partTwoMenu.setName(Participant2.getName());
partThreeMenu.setName(Participant3.getName());
partFourMenu.setName(Participant4.getName());
partOneMenu.revalidate();
partTwoMenu.revalidate();
partThreeMenu.revalidate();
partFourMenu.revalidate();
System.out.println(partOneMenu.getName());
}
打印语句显示名称已更改。
【问题讨论】:
标签: java swing user-interface model