Этот совет показывает, как я обычно создаю действие для приложения на платформе NetBeans, а затем включаю его в подменю.
- Создайте новый модуль, а затем используйте мастер действий для создания моего DemoAction .
- Первая панель запрашивает тип действия, я оставляю Всегда включенным. На следующих панелях я заполняю формы всеми необходимыми данными, как показано ниже:
- Как видите, ничего нового. А затем давайте настроим записи файла layer.xml, созданные мастером, показанным выше. Это то, что было сгенерировано:
<? xml version = "1.0" encoding = "UTF-8"?>
<!
PUBLIC файловой системы DOCTYPE "- // NetBeans // Файловая система DTD 1.2 // EN"
"http://www.netbeans.org/dtds/filesystem -1_2.dtd ">
<файловая система>
<имя папки =" Действия ">
<имя папки =" Редактировать ">
<имя файла =" org-casaburo-submenuDemo-DemoAction.instance ">
<attr name =" делегат "newvalue = "org.casaburo.submenuDemo.DemoAction" />
<attr name = "displayName" bundlevalue = "org.casaburo.submenuDemo.Bundle # CTL_DemoAction" />
<attr name = "iconBase" stringvalue = "org / casaburo / submenuDemo / add .png»/>
<attr name = "instanceCreate" methodvalue = "org.openide.awt.Actions.alwaysEnabled" />
<attr name = "noIconInMenu" boolvalue = "false" />
</ file>
</ folder>
</ folder>
<folder name = "Menu">
<имя папки = "Edit">
<имя файла = "org-casaburo -submenuDemo-DemoAction.shadow ">
<attr name =" originalFile "stringvalue =" Actions / Edit / org-casaburo-submenuDemo-DemoAction.instance "/>
<attr name =" position "intvalue =" 100 "/>
</ file>
</ folder>
</ folder>
<folder name = "Панели инструментов">
<folder name = "File">
<file name = "org-casaburo-submenuDemo-DemoAction.shadow">
<attr name = "originalFile" stringvalue = "Actions / Edit / org-casaburo-submenuDemo-DemoAction.instance" />
<attr name = "position" intvalue = "0" />
</ file>
</ folder>
</ папка>
</ filesystem>Теперь предположим, что я хочу разместить пункт меню «Демонстрация действий» в « Моем подменю ». Я изменяю layer.xml, как показано ниже (обратите внимание на строки с 20 по 25 ниже):
<? xml version = "1.0" encoding = "UTF-8"?>
<! PUBLIC файловой системы DOCTYPE "- // NetBeans // Файловая система DTD 1.2 // EN"
"http://www.netbeans.org/dtds/filesystem -1_2.dtd ">
<файловая система>
<имя папки =" Действия ">
<имя папки =" Редактировать ">
<имя файла =" org-casaburo-submenuDemo-DemoAction.instance ">
<attr name =" делегат "newvalue = "org.casaburo.submenuDemo.DemoAction" />
<attr name = "displayName" bundlevalue = "org.casaburo.submenuDemo.Bundle # CTL_DemoAction" />
<attr name = "iconBase" stringvalue = "org / casaburo / submenuDemo / add .png "/>
<attr name = "instanceCreate" methodvalue = "org.openide.awt.Actions.alwaysEnabled" />
<attr name = "noIconInMenu" boolvalue = "false" />
</ file>
</ folder>
</ folder>
<folder name = "Menu">
<имя папки = "Edit">
<имя папки = "My Submenu" >
<file name = "org-casaburo-submenuDemo-DemoAction.shadow">
<attr name = "originalFile" stringvalue = "Actions / Edit / org-casaburo-submenuDemo-DemoAction.instance" />
<attr name = "position" intvalue = "100" />
</ file>
</ folder>
</ folder>
</ folder>
<папка имя = "Панели инструментов">
<папка имя = "Файл">
<имя файла = "org-casaburo-submenuDemo-DemoAction.shadow">
<attr name = "originalFile" stringvalue = "Actions / Edit / org-casaburo-submenuDemo-DemoAction.instance" />
<attr name = "position" intvalue = "0" />
</ file>
</ folder>
</ папка>
</ filesystem>И вот результат:
Это все!