Apache NetBeans
Apache NetBeans
Latest release

Apache NetBeans 23

Download

How do I invoke an action programmatically?

Use FileUtil.getConfigObject()

//provide the path to your action instance
Action action = FileUtil.getConfigObject("Actions/Window/org-netbeans-core-windows-actions-MaximizeWindowAction.instance", Action.class);
action.actionPerformed(ev);

or

//provide the path to the action folder
List<? extends Action> actions = org.openide.util.Utilities.actionsForPath("Navigation/Hierarchy/text/x-java/Actions")
//Bonus: Create a popupmenu from these actions
//Action[] aactions = actions.toArray(new Action[]{});
//JPopupMenu menu = Utilities.actionsToPopup(aactions, getLookup());

or Actions.forID() (since NB 7.2)

//provide category and classname
Action action=org.openide.awt.Actions.forID("Window", "org.netbeans.core.windows.actions.MaximizeWindowAction");
action.actionPerformed(ev);

See