Visual Studio 的巨集功能深受開發者喜愛,能大幅提升編碼效率。本文將詳細介紹如何在 JBuilder 4.0 至 7.0 版本中,透過 OpenTools API 實現類似的巨集擴充功能。我們將以「程式碼註解切換」為範例,展示完整的開發流程,作為您開發自訂擴充功能的起點。
支援環境:JBuilder 4.0 - JBuilder 7.0
編譯專案時,需在 Project → Project Properties → Required Libraries 中加入 JBuilder 安裝目錄下的 OpenTool SDK。編譯成功後,將生成的 class 檔案打包成 JavaCommentSwitch.jar,並在 META-INF/Manifest.mf 中加入以下內容:
Manifest-Version: 1.0 OpenTools-UI: JavaCommentSwitch
專案包含兩個核心類別:IDEActions.java 負責註冊右鍵選單動作,JavaCommentSwitch.java 實作註解切換邏輯與快捷鍵綁定。
此類別實作 EditorContextActionProvider 介面,將自訂動作加入編輯器右鍵選單:
ActionGroup 命名為「JBuilder IDE Toolbox」JavaCommentSwitch.ACTION_GenerateJavaCommentSwitch 加入子選單getContextAction() 回傳動作群組繼承 EditorAction 並實作 PropertyChangeListener,主要功能:
/* */ 包裹,自動切換註解狀態initOpenTool() 中註冊 Alt+F10 熱鍵EditorManager.registerContextActionProvider() 整合至右鍵選單private boolean runJavaCommentSwitch() {
String selection = target.getSelectedText();
String newSelection = "";
// 移除註解
if (selection.trim().startsWith("/*") && selection.trim().endsWith("*/")) {
newSelection = selection.substring(2, selection.length() - 2);
}
// 加入註解
else {
newSelection = "/*" + selection + "*/";
}
target.replaceSelection(newSelection);
return true;
}
JavaCommentSwitch.jar 放入 JBuilder 的 lib/ext 目錄Alt+F10 或右鍵選擇「JBuilder IDE Toolbox → JavaCommentSwitch」即可切換註解此範例展示了 OpenTools API 的基本架構,您可以在此基礎上開發更多實用功能,例如:程式碼片段插入、自動產生 Getter/Setter、程式碼格式化等。掌握 EditorContextActionProvider、EditorAction 及 Jot 物件模型是進階開發的關鍵。