Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中,将鼠标事件添加到文本字段create by array中_Java_Swing - Fatal编程技术网

在java中,将鼠标事件添加到文本字段create by array中

在java中,将鼠标事件添加到文本字段create by array中,java,swing,Java,Swing,这是一个按钮操作侦听器的代码,当我按下此按钮后,将设置GridLayout大小,并在其中添加textfield,但当我尝试将鼠标事件添加到文本中时,将出现问题(我想要的功能是当我按下proID[0]时,proName[0]将settext设置为“0”和proID[1],然后proName[1]将settext设置为“1”(下一步) 你不需要某种形式的for循环吗?在哪一部分?在addMouseListener?Felix之前,你有一个组件数组,对吗?上面的代码只在数组中创建了一个JTextFie

这是一个按钮操作侦听器的代码,当我按下此按钮后,将设置GridLayout大小,并在其中添加textfield,但当我尝试将鼠标事件添加到文本中时,将出现问题(我想要的功能是当我按下proID[0]时,proName[0]将settext设置为“0”和proID[1],然后proName[1]将settext设置为“1”(下一步)


你不需要某种形式的for循环吗?在哪一部分?在addMouseListener?Felix之前,你有一个组件数组,对吗?上面的代码只在数组中创建了一个JTextField,即位于位置0的JTextField,对吗?嗯,难道你看不出你需要一个for循环来创建和设置你的6个字段吗?循环将从
proID[countttt]=newjtextfield(“a”+countttt)开始行,您尝试初始化数组组件的行(但仅初始化一个)。for(int q=0;q)您不希望在注释中发布代码,因为它很难阅读。您希望for循环更大,有许多行,以便完全设置每个JTextArea。玩这个游戏——您会找到答案的。
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();


}