2012-02-13 2 views
3

Чтобы определить действия для выбранных узлов, я переопределяю метод getActions(bool b)BeanNode. Однако, если я выбираю более одного узла, я не вижу контекстного меню в правом знаке. Есть ли способ определить действия для нескольких узлов? Если вы знаете учебник, который я пропустил по теме, пожалуйста, ссылку, иначе я благодарен за любые намеки.Действия для множественного выбора узла

  • Узлы одного типа (и имеют одинаковые действия).
  • Узлы отображаются на BeanTreeView.
+0

Возможно, вы можете обновить свои вопросы со следующей информацией: Вы переопределяете 'getActions()' на узле или NodeFactory (afaik NodeFactory не имеет метода 'getActions()')? Все ли узлы одного типа (т. Е. Имеют ли они одни и те же действия)? Какой проводник вы используете? – ughzan

ответ

1

Наиболее вероятный сценарий, который будет вызывать действия, которые будут отображаться во время одного выбора, но не во время мульти выбора является то, что вы new действия каждый раз, когда в методе getActions(boolean b). Это предотвратит метод findActions(Node[] nodes) в NodeOp.java от нахождения общих действий для ваших узлов, поскольку экземпляры действий будут разными.

Скорее используйте SystemAction.get(Class<T> actionClass) или что-то похожее на получение экземпляров ваших действий вместо создания экземпляров действий каждый раз.