10

Netbeans の編集不可能なコードを変更したい、 javax.swing.JTextFeild を 、日付ピッカーを実装するためにプロジェクトにインポートされたクラスを 持つ ObservingTextField
に置き換えたい しかし、Netbeans では編集できませんコード。助けてください


// Variables declaration - do not modify                     
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JPanel jPanel1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
`private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;`
// End of variables declaration   
4

7 に答える 7

22

別のオプションは、特別なコメントを削除します。NetBeans では表示されませんが、他のテキスト エディタ (メモ帳など) で開くと、編集できないセクションの最初と最後にコメントが表示されます。コメントは次のようになります。

//GEN-BEGIN:initComponents
//GEN-END:initComponents
于 2014-04-03T18:04:51.440 に答える
18

Netbeans GUI エディター (Matisse と呼ばれる) を使用するファイルにカスタム コンポーネントを追加する場合、いくつかの方法があります。

初め:

そのコンポーネントを「パレット」マネージャーに追加できます。個人的には、特に自分のカスタム ライブラリからコンポーネントを追加する場合は、これであまりうまくいきませんでした。ただし、コンポーネントを追加して「プロジェクトから」を選択し、プロジェクトを選択すると、コンポーネントが一覧表示されます (そうでない場合は、クリーン & ビルドを実行してください)。

このプロジェクトには 2 つのファイルがあることに注意してCustomTextFieldくださいNewJFrame

ここに画像の説明を入力

CustomTextField のコードは、以下を拡張したものにすぎませんJTextField

package test4;

import javax.swing.JTextField;

public class CustomTextField extends JTextField {

}

次に、パレット ウィンドウで右クリックし、[パレット マネージャー...] をクリックします。

ここに画像の説明を入力

次に、パレット マネージャーで、[プロジェクトから追加...] をクリックします (ライブラリから追加する場合は、[ライブラリから追加...] をクリックします)。

ここに画像の説明を入力

それから私は選択しますCustomTextField

ここに画像の説明を入力

それがパレット マネージャーにあり、GUI にドラッグ アンド ドロップできます。

ここに画像の説明を入力

注:複数のプロジェクトでこのコンポーネントが必要な場合、この方法はあまり適していません。パレット マネージャは Netbeans 全体のためのものなので、別のプロジェクトに存在するコンポーネントを使用しようとすると、問題が発生します。

注 #2: Java Web Start と独自のカスタム ライブラリに問題がありました。カスタム ライブラリがロードされるたびにJNLPClassLoader から NPE を引き起こす 7u25 でリリースされたバグがあるため、ライブラリではなくプロジェクトからコンポーネントをインポートする必要がありました。

2番:

よりハックな方法がありますが、必要な場合もあります。GUI エディターでコンポーネントを右クリックし、[コードのカスタマイズ] をクリックします。ここに画像の説明を入力その後、変数の定義を変更できます (宣言ではありません)。変数宣言を変更する必要がある場合は、さらにハックになります。その時点でコードを手書きすることをお勧めします。ただし、このウィンドウから行うには、「変数宣言コード」の部分を「コメント オフ」して、独自の変数宣言を追加/*および*/前後に追加することができます。private javax.swing.JTextField jTextField1;

三番:

あなたの他のオプションは手書きです。:) シンプルな Swing コンポーネントまたはパレットに追加できるコンポーネントが必要な場合は、GUI エディターをお勧めします。より複雑でカスタマイズされた Swing コンポーネントが必要な場合は、このコードを手で書き始めることをお勧めします。ほとんどの人はとにかくそうすることをお勧めします。しかし、私は誇らしげに Netbeans の GUI エディターを愛しています。

于 2013-08-23T18:52:12.723 に答える
1

それは、なぜ netbeans がそのソース ファイルの編集を妨げているのかによって異なります。

  1. これは、プロジェクトにインポートしたライブラリの一部です。これは、プロジェクトがコンパイル済みのクラス/jar ファイルを実際に使用していることを意味します。このファイルを編集しても意味がありません。ライブラリの作成者を見つけて、変更リクエストを提出してください。これは、Java API 自体にも当てはまります。もちろん、彼らが実際に変更要求を受け入れる可能性は低いかもしれません。

  2. 特別な理由もなく、ディスク上で書き込み保護されています。=> 書き込み可能にする

  3. システムからファイルをチェックアウトする前に編集できないようにするバージョン管理システムによって制御されます。それをチェックしてください。

  4. これは、netbeans によって生成されたファイルです (投稿したソース コードから判断すると、実際にはそうである可能性があります)。この場合、おそらく別のエディター (メモ帳/vi) で編集できますが、変更はおそらく次のコード生成で上書きされるか、使用するツールのファイルが壊れます。=> ツールと、そのツールで変更を適切に適用する方法を見つけます。

于 2013-06-16T09:00:22.640 に答える
1

ネット Bean を使用すると、フォーム ビュー ページからカスタム コードを使用できます。私は現在、ネット Beans を備えたコンピューターを使用していませんが、テキスト領域とその下部近くを右クリックすると、

于 2013-06-16T09:01:04.087 に答える
0

ファイルを編集するには、簡単な回避策を使用します。まず、コード全体をメモ帳にコピーし、クラスを削除します。次に、Java クラスを作成し、コードを貼り付けます。ただし、GUI ビルダーは現在入手できないことに注意してください。だからマイルに留めてください

于 2015-09-17T13:19:43.770 に答える
0

netbeans でフォーム ファイルを開くと、これはフォーム ファイルの最後にある Java ファイルを指します。

この編集不可能なファイルを編集するための解決策は次のとおりです。

  1. Netbeans を開き、[ツール] > [オプション] > [その他] に移動します
  2. ファイル 新しいファイル拡張子を作成>form> し、関連付けられたファイルの mime で次を選択します: HTML ファイル
于 2014-03-25T17:37:57.247 に答える