NetBeansAPI

NetBeansプラットフォームからはEXIT_ON_CLOSEのJFrameは開けない

NetBeansモジュールやNetBeansプラットフォームを使ったアプリケーションからdefaultCloseOparationにEXIT_ON_CLOSEが指定されたJFrameを開こうとしても、無視されます。 ログにも何も出ないようです。 その挙動は当然としても、ログくらいは吐いて欲しいな…

ノードの選択イベントを取得する

LookupListenerインタフェースを実装してresultChangedでイベント処理 public void resultChanged(LookupEvent lookupEvent) { Lookup.Result res = (Lookup.Result)lookupEvent.getSource(); for(Object o : res.allInstances()){ //選択の処理 } } TopComp…

アプリのタイトルバーのビルド番号を消したい

NetBeans Platformを使って作成したアプリケーションでは、タイトルバーにNetBeansのビルド番号が表示されます。 多くの場合、それは邪魔くさいので、モジュールスイートプロジェクトの branding/modules/org-netbeans-core-windows.jar/org/.../ui/Bundle.p…

Native2Ascii処理

PropertiesモジュールのUtilConvert#saveConvertを使う。

ModuleInstallのインスタンス

ModuleInstallのインスタンスはrestored()とclose()のときで違うようだ

TreeTableView

autoupdateの org.netbeans.modules.autoupdate.catalog.ModuleSelectionPanel 参照 「ツール > モジュールマネージャ」で開く画面

NetBeansの終了時に処理を行う

依存関係にモジュールシステムを追加 ModuleInstallを継承 manifest.mfに「OpenIDE-Module-Install: クラスファイル」を追加 closeをオーバーライドして終了処理 closingをオーバーライドすると終了確認 DBモジュールを参考

出力ウィンドウを使う

IOProviderを使う 入出力APIと出力ウィンドウを依存関係に追加 独立アプリの場合は必須トークンにIOProviderを追加しないとウィンドウが出ない

インスペクタのようなもの、実装編

TopComponentGroupを使う。 User Interface Specification 1.TopComponentGroupを作成 ・wsgrpファイルを作成(resources/groups/form.wsgrpを参考) ・Windows2/Groupsに追加 2.従ウィンドウをグループに追加 ・wstcgrpファイルを作成(resources/groups/form/…

インスペクタのようなもの

FormDesigner.javaとComponentInspector.javaの関係を参考

TopComponentのシリアライズ

writeReplaceメソッドをコメントアウト writeExternalをオーバーライドして保存 readExternalをオーバーライドして読み込み

ファイルからDataObjectの取得

File→FileObject→DataObject File f = new File("c:\\test\\foo.txt"); FileObject fo = FileUtil.toFileObject(f); DataObject dao = DataObject.find(fo);

FilterNodeは代理Node

名前と用途が結びつかないけど、FilterNodeはすでにあるNodeのふるまいを変更するためのNode