0

使ってみ.setVisibility(true)たけどNullPointerException. どうすればこれをより効果的に行うことができますか? ユーザーがボタンを押すと、ラベルとフィールドが非表示になり、表示されるようになります。オブジェクトのサイズも変更したい。アイデア?エラー行の 1 つを次に示します。

public JLabel lblName;




    JLabel lblName = new JLabel("Name:");
    lblName.setFont(new Font("Tahoma", Font.PLAIN, 15));
    lblName.setBounds(10, 91, 79, 19);
    panel.add(lblName);
    lblName.setVisible(false);


    public void actionPerformed(ActionEvent e) {
        lblName.setVisible(true);
    }

上記はすべて、3 番目のスニペットを追加するまで問題なく動作する個別のコード スニペットです。

4

2 に答える 2

1

あなたの質問のコードから判断すると:

フィールドとローカルJLabel lblName があり、フィールドを初期化していません。ローカル変数のみを初期化しています。したがって、あなたの例外です。

于 2012-10-01T23:40:53.580 に答える
0

つまり、次の行に移動します。

JLabel lblName = new JLabel("Name:");

そして言わせる

lblName = new JLabel("Name:");

起こっていたのは、新しいローカル変数を開始していて、パブリック変数を設定していなかったということです。

于 2012-10-02T00:00:15.150 に答える