6
所以我有一个JMenu,里面有几个子菜单。这些菜单的名称通过获得4名球员中的1名的名字来设置。我添加了一个MenuListener到JMenu使用更新JMenu显示名称
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());
}
print语句表明该名称已更改。
就是这样!谢谢! –
不客气! – yair