spark 启动后,在logindialog中 启动了 mainwindows。 mainwindows 的构造函数第一个就是buidmenu。 在这个方法中主要进行了以下操作:
mainWindowBar.add(connectMenu);
mainWindowBar.add(contactsMenu);
mainWindowBar.add(actionsMenu);
//mainWindowBar.add(pluginsMenu);
mainWindowBar.add(helpMenu);
此时系统的有些menuitem加入进去了,有些没有加入,系统是在调用。
workspace.buildLayout();// 主要是创建用户列表 in logindialog 1243行
中的
contactList = UIComponentRegistry.createContactList(); 创建了联系人列表,并且添加 menuitem。
通过:
final JMenu contactsMenu = SparkManager.getMainWindow().getMenuByName(Res.getString("menuitem.contacts")); in contactlist 1969行 获取了 contactsMenu 然后再add item