Я вернулся с еще одним классным трюком и советами, которые нужно запомнить. Позвольте мне поделиться с вами еще одним трюком, которым я пользуюсь уже несколько недель, и это действительно здорово! Он основан на платформе NetBeans , в частности, на файле уровня XML, который является необязательным файлом конфигурации плагина. Это мой первый полноценный пост на платформе NetBeans, так как я занимаюсь этим почти ежедневно в течение недели, для некоторых интересных разработок плагинов.
Предпосылки
Этот трюк использует существующий учебник , который является основой, на которой я выполнил трюк. Кроме того, вы должны прочитать это руководство, если у вас нет опыта работы с платформой NetBeans.
описание проблемы
Как уже упоминалось в руководстве, я создал тип действия ( CallableSystemAction ), сделал его глобальным элементом меню и кнопкой на панели инструментов. Я назвал тип действия (файл Java) как SayCheez и отобразил имя как Say Cheez…
Теперь я сделал это действие, как и ожидалось в учебнике. Теперь, щелкните правой кнопкой мыши проект и нажмите на Install / Reload в целевой платформе в (контекстное меню) контекстно-зависимая меню. Его успешно работает!
Теперь позвольте мне показать вам структуру XML Layer (layer.xml), похожую на ту, которая показана в руководстве, т.е. как она регистрирует действие в IDE NetBeans.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.1//EN" "http://www.netbeans.org/dtds/filesystem-1_1.dtd">
<filesystem>
<folder name="Actions">
<folder name="Tools">
<file name="org-nvarun-tat-SayCheez.instance"/>
</folder>
</folder>
<folder name="Menu">
<folder name="Tools">
<file name="org-nvarun-tat-SayCheez.shadow">
<attr name="originalFile" stringvalue="Actions/Tools/org-nvarun-tat-SayCheez.instance"/>
<attr name="position" intvalue="150"/>
</file>
<file name="org-nvarun-tat-separatorAfter.instance">
<attr name="instanceClass" stringvalue="javax.swing.JSeparator"/>
<attr name="position" intvalue="175"/>
</file>
<file name="org-nvarun-tat-separatorBefore.instance">
<attr name="instanceClass" stringvalue="javax.swing.JSeparator"/>
<attr name="position" intvalue="125"/>
</file>
</folder>
</folder>
<folder name="Toolbars">
<folder name="Build">
<file name="org-nvarun-tat-SayCheez.shadow">
<attr name="originalFile" stringvalue="Actions/Tools/org-nvarun-tat-SayCheez.instance"/>
<attr name="position" intvalue="325"/>
</file>
</folder>
</folder>
</filesystem>
Итак, хитрость в том, как манипулировать XML-уровнем и не тратить время, размещая действия где-либо еще в IDE, создавая их заново.
Решение
Обратите внимание, что все следующие приемы будут работать только для CallableSystemAction , я не проверял CookieAction , хотя он должен работать и для CookieAction , если вы работаете только с MenuItem, кнопкой панели инструментов или сочетаниями клавиш ! Для редактора и контекста типа файла MenuItem , был бы другой путь, я посмотрю, будет ли с ним удобно играть
По вычету кода
Трюк № 1 — Если вы хотите удалить один из разделителей, ИЛИ даже оба из них, то посмотрите следующий код, приведенный в нем код, удаляющий его из уровня XML, в соответствии с вашими потребностями.
<file name="org-nvarun-tat-separatorAfter.instance">
<attr name="instanceClass" stringvalue="javax.swing.JSeparator"/>
<attr name="position" intvalue="175"/>
</file>
<file name="org-nvarun-tat-separatorBefore.instance">
<attr name="instanceClass" stringvalue="javax.swing.JSeparator"/>
<attr name="position" intvalue="125"/>
</file>
Трюк № 2 — Если вы хотите удалить действие с панели инструментов, то удалите следующий код;
<folder name="Toolbars">
<folder name="Build">
<file name="org-nvarun-tat-SayCheez.shadow">
<attr name="originalFile" stringvalue="Actions/Tools/org-nvarun-tat-SayCheez.instance"/>
<attr name="position" intvalue="325"/>
</file>
</folder>
</folder>
Трюк № 3 — Если вы хотите удалить действие из меню инструментов и сохранить его только на панели инструментов, удалите следующий код;
<folder name="Menu">
<folder name="Tools">
<file name="org-nvarun-tat-SayCheez.shadow">
<attr name="originalFile" stringvalue="Actions/Tools/org-nvarun-tat-SayCheez.instance"/>
<attr name="position" intvalue="150"/>
</file>
<file name="org-nvarun-tat-separatorAfter.instance">
<attr name="instanceClass" stringvalue="javax.swing.JSeparator"/>
<attr name="position" intvalue="175"/>
</file>
<file name="org-nvarun-tat-separatorBefore.instance">
<attr name="instanceClass" stringvalue="javax.swing.JSeparator"/>
<attr name="position" intvalue="125"/>
</file>
</folder>
</folder>
По замене кода
Трюк № 4 — Если вы хотите создать комбинацию клавиш для этого действия, добавьте следующий код:
<folder name="Shortcuts">
<file name="O-F3.shadow">
<attr name="originalFile" stringvalue="Actions/Tools/org-nvarun-tat-SayCheez.instance"/>
</file>
</folder>
Трюк № 5 — Иногда может случиться, что ваше действие не подходит ни для какого существующего меню , и вы хотите создать свое собственное меню . К тому времени, когда вы подготовитесь к своему меню , у вас могут быть только эти сочетания клавиш , то есть ни пункт меню , ни кнопка на панели инструментов .
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.1//EN" "http://www.netbeans.org/dtds/filesystem-1_1.dtd">
<filesystem>
<folder name="Actions">
<folder name="Tools">
<file name="org-nvarun-tat-SayCheez.instance"/>
</folder>
</folder>
<!--folder name="Menu">
<folder name="Tools">
<file name="org-nvarun-tat-SayCheez.shadow">
<attr name="originalFile" stringvalue="Actions/Tools/org-nvarun-tat-SayCheez.instance"/>
<attr name="position" intvalue="150"/>
</file>
</folder>
</folder-->
<folder name="Shortcuts">
<file name="O-F3.shadow">
<attr name="originalFile" stringvalue="Actions/Tools/org-nvarun-tat-SayCheez.instance"/>
</file>
</folder>
</filesystem>
Советы для запоминания
Этот код имеет комбинацию клавиш «Alt + F3», которая представлена как «O-F3.shadow», так что это означает, что если у вас есть какая-то комбинация клавиш, которая использует «Alt» , то используйте «O» , и для каждого Знак «+», использующий «-» , наконец, объединяется с только что сформированной комбинацией с «.shadow» ! Если вы используете «Ctrl» , то «D», а «Shift» — «S» !
Ниже приведены некоторые ключевые эквиваленты, используемые в XML Layer;
- От A до Z (как есть), от F1 до F12 (как есть), от 0 до 9 (как есть)
- / как SLASH, \ как BACK_SLASH
- ; как SEMI_COLON
- , как ПЕРИОД
- ‘ как цитата
Это были некоторые из часто используемых клавиш в комбинации клавиш. Если вы хотите узнать больше, вы можете оставить комментарий здесь. Я был бы рад помочь вам! На самом деле, я разрабатывал модуль в течение прошлой недели, и более интенсивно в выходные дни, и наблюдал это методом проб и ошибок , и думал о том, чтобы поделиться этим трюком с вами, людьми. В любом случае, спасибо за подписку, наслаждайтесь и получайте удовольствие! Чтобы узнать больше о сюрпризе, следите за моим блогом!
Ссылки
[1] Еще советы и хитрости !
[2] Повторно из этой записи в блоге !
[3] Вы можете подписаться на все советы и рекомендации моего блога !