0

これはボタン アクション リスナーのコードです。このボタンを押した後、GridLayout のサイズを設定し、内部にテキスト フィールドを追加しますが、テキストにマウス イベントを追加しようとすると問題が発生します (必要な機能は、 proID[0] を押すと、proName[0] がテキストを「0」に設定し、proID[1] を押すと、proName[1] がテキストを「1」に設定し、次にすべて )

static int k = 1;
static int i = 1;
static int countttt = 0;
private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {
    JTextField proID[] = new JTextField[i];
    JTextField proName[] = new JTextField[i];
    JTextField pUnitPrice[] = new JTextField[i];
    JTextField Qty[] = new JTextField[i];
    JTextField Linetotal[] = new JTextField[i];


    GridLayout experimentLayout = new GridLayout(k, 5, 1, 1);
    jPanel6.setLayout(experimentLayout);
    proID[countttt] = new JTextField("a" + countttt);
    proName[countttt] = new JTextField();
    pUnitPrice[countttt] = new JTextField();
    Qty[countttt] = new JTextField();
    Linetotal[countttt] = new JTextField();


    proID[countttt].addMouseListener(new MouseListener() {
        public void mouseClicked(MouseEvent e) {
            System.out.println(countttt);
            proName[countttt].setText(countttt);
        }

        public void mousePressed(MouseEvent e) {
        }

        public void mouseReleased(MouseEvent e) {
        }

        public void mouseEntered(MouseEvent e) {
        }

        public void mouseExited(MouseEvent e) {
        }
    });

    jPanel6.add(proID[countttt]);
    jPanel6.add(proName[countttt]);
    jPanel6.add(pUnitPrice[countttt]);
    jPanel6.add(Qty[countttt]);
    jPanel6.add(Linetotal[countttt]);
    i++;
    countttt++;
    k++;
    jPanel6.repaint();
    jPanel6.revalidate();


}
4

0 に答える 0