NetBeans では、GUI ビルダーは、エディターから立ち入り禁止のコードを生成します。
デザイン モードに切り替えてカスタム コードを指定し、その方法で間接的に編集に入ることができることは知っていますが、カーソルから 2 行のテキストを編集できないのは苦痛です。
それらの領域内での編集を許可できますか...注意することを約束します:)
ありがとう。
注: コード生成を失いたくない
NetBeans では、GUI ビルダーは、エディターから立ち入り禁止のコードを生成します。
デザイン モードに切り替えてカスタム コードを指定し、その方法で間接的に編集に入ることができることは知っていますが、カーソルから 2 行のテキストを編集できないのは苦痛です。
それらの領域内での編集を許可できますか...注意することを約束します:)
ありがとう。
注: コード生成を失いたくない
外部エディタで開いた場合、次の 2 つの可能性があります。
いずれにせよ、おそらくあなたが望むものではありません。最良の方法は、おそらく GUI エディターで全体のデザインを作成し、それに満足したら、コメントを削除して続行することです。
[皮肉] ドラッグ アンド ドロップの GUI エディターで、とにかく手動で何を変更したいですか? [/皮肉] ;)
メモ帳またはワードパッドで .java ファイルを開くと、次のようなコメントのペアが見つかります。
// GEN-BEGIN: <name of section>
...
// GEN-END: <name of section>
それらのコメントを削除すると、2 つのことが起こります。
だからそれはできますが、本当にそうするつもりがない限り、それをしないでください.
EDIT:「注:コード生成を失いたくありません。」わかりました、ここで見てみましょう。
トラブルを望んでいるように聞こえます。:D
私も同じ問題を抱えていました。自分のパネルクラスでJPanelを拡張しましたが、残りのUIと一緒にパックすることができませんでした。最初にウェブを検索して、あなたの質問を見つけました。私はこの問題のエレガントな解決策を見つけることができませんでした。したがって、別のJavaクラスを作成し、NetBeansで作成されたコードをそのクラスにコピーすることにしました。それは魅力のように機能しました。同意します。.NETのように既存のコードを変更できればいいのですが。
.form
ファイルを移動することもできます
(プロジェクト名)\src\(JFrame/JPanelの名前).form
NetBeans はこれを.java
ファイルとして認識します。
GUI エディターに必要なものを何も編集していない場合は、.form
ファイルをsrc
フォルダーに戻すことができます。
initcomponents() メソッドをコピーし、独自のメソッド newInitComponents() を作成して、生成されたコードを貼り付け、コードを配布する前にオーバーライドする必要があるものをオーバーライドします。そうすれば、エディターで変更が加えられた場合でも、コードをコピーして新しいメソッドに貼り付けることができます。必要に応じてオーバーライドする機能を犠牲にすることなく、機能を維持できます。元のコンストラクタではなく、コンストラクタで newInitComponents() を呼び出すだけです。これは最も効率的な方法ではありませんが、必要なことは実行できます。
デザイン ページに移動し、いずれかのフィールドを選択します。選択したフィールドを右クリックして Customizer Code を選択し、Customizer Code ですべてのデフォルト コードを custom creation に変更します。これで、デザインコードを好きなように編集できます...
クラスをサブクラス化し、このコードがあるメソッドを再定義できますか? もちろん、GUI に変更を加えるたびに、メソッドを維持する必要があります。
AspectJ を調べることもできます。ビルド時にバイトコードを変更し、定義した変更を行います。これにより、変更するコードを十分に制御できるかどうかはわかりません。