Я вызываю метод addNotify () в классе, который я разместил здесь.Проблема в том, что когда я вызываю addNotify (), как в коде, setKeys (objs) ничего не делает.В моем проводнике запущенного приложения ничего не появляется.
Но когда я вызываю addNotify () без цикла (для int ....) и добавляю только один элемент в ArrayList, он показывает, что один элемент правильно.
Кто-нибудь знает, где могут быть проблемы?См. Cede
class ProjectsNode extends Children.Keys{
private ArrayList objs = new ArrayList();
public ProjectsNode() {
}
@Override
protected Node[] createNodes(Object o) {
MainProject obj = (MainProject) o;
AbstractNode result = new AbstractNode (new DiagramsNode(), Lookups.singleton(obj));
result.setDisplayName (obj.getName());
return new Node[] { result };
}
@Override
protected void addNotify() {
//this loop causes nothing appears in my explorer.
//but when I replace this loop by single line "objs.add(new MainProject("project1000"));", it shows that one item in explorer
for (int i=0;i==10;i++){
objs.add(new MainProject("project1000"));
}
setKeys (objs);
}
}