基本上我希望能够允许用户保存书签,然后将书签放入菜单栏上子菜单的列表中。我如何为可能添加的任意数量的书签编写常规函数,我基本上希望项目在单击时将URL放入文本框中。我需要为此创建一个新类,还是有内置函数?
我的程序是一个简单的RSS阅读器,用Java编写,使用Swing。
答案 0 :(得分:5)
您需要将MenuListener添加到您想要动态的菜单项中。 在 void menuSelected(MenuEvent e)方法中,实现子菜单的构造。 在第一个实现中,您可以先重置菜单内容,然后从头开始重新创建,而不是更新它:
JMenu menu = new JMenu("Bookmarks");
menu.addMenuListener(new MyMenuListener());
private class MyMenuListener implements MenuListener {
public void menuCanceled(MenuEvent e) { }
public void menuDeselected(MenuEvent e) { }
public void menuSelected(MenuEvent e) {
JMenu menu = (JMenu) e.getSource();
populateWindowMenu(menu);
}
}
void populateWindowMenu(JMenu windowMenu) {
windowMenu.removeAll();
// Populate the menu here
}