0

私はまだJavaを学んでいるので、我慢してください。「はい」という名前のボタンをクリックすると、変数 Y が 1 増加し、変数 X の「いいえ」ボタンと同じプログラムを作成しようとしています。Eclipse と WindowBuilder Pro を使用しています。エラー「内部クラス内の変数は参照できません」

これが私のコードです:

    import javax.swing.JApplet;
    import javax.swing.JButton;
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    import javax.swing.JFormattedTextField;


    public class qa extends JApplet {

        /**
         * Create the applet.
         */
        public qa() {
            getContentPane().setLayout(null);

            int y=0;
            int x=0;
            String s1 = String.valueOf(y);


            JButton btnYes = new JButton("YES");
            btnYes.addMouseListener(new MouseAdapter() {
                @Override
                public void mouseClicked(MouseEvent arg0) {
                    ++y;
                }
            });
            btnYes.setBounds(135, 220, 85, 42);
            getContentPane().add(btnYes);

            JButton btnNo = new JButton("NO");
            btnNo.addMouseListener(new MouseAdapter() {
                @Override
                public void mouseClicked(MouseEvent e) {
                    ++x;
                }
            });
            btnNo.setBounds(230, 220, 85, 42);
            getContentPane().add(btnNo);

            JFormattedTextField frmtdtxtfldVarible = new JFormattedTextField();
            frmtdtxtfldVarible.setText(s1);
            frmtdtxtfldVarible.setBounds(147, 130, 157, 20);
            getContentPane().add(frmtdtxtfldVarible);


        }
    }

助けてくれてありがとう!

4

1 に答える 1

3

xandをインスタンス変数として宣言yして、最終的なローカル変数として宣言する必要がないようにします。

public class qa extends JApplet
{
    private int x = 0;
    private int y = 0;

    // ...
}
于 2013-05-13T17:59:05.440 に答える