java - JTextfield数组,检索名称和文本

标签 java arrays swing actionlistener jtextfield

我有一个 JTextField 数组,当修改 JTextField 时,我希望获得 JTextField 的名称和文本。

while ((line = bufferedReader.readLine()) != null) { // 1 by 1 line of file
    if (f == 6) {
        g++;
        f = 0;
    }
    tableauDonnee[g][f] = line;
    fields[g][f] = new JTextField(tableauDonnee[g][f]);
    fields[g][f].setName(String.valueOf(g + etf));
    fields[g][f].setBounds(positionY, positionX, 160, 40);
    pan.add(fields[g][f]);
    positionY = positionY + 180;
    f++;

我可以在将 JTextField 添加到面板之前执行此操作

fields[g][f].addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent event) {
        textfield = fields[g][f].getText();
        nameTextfield = fields[g][f].getName();
    }
});

但是它不会工作,因为gf的值不好。

我被困住了,不知道该怎么办。

最佳答案

您可以从ActionEvent中获取事件源(即您按下 Enter 键的文本字段):

public void actionPerformed(ActionEvent event) 
{
    JTextField textField = (JTextField)event.getSource();
    ...
}

另外,为什么要使用文本字段的二维数组。

我建议使用 JTable 是更好的组件。阅读 Swing 教程中关于 How to Use Tables 的部分了解更多信息。

关于java - JTextfield数组,检索名称和文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59163812/

相关文章:

arrays - 合并哈希和键同时获得旧值和新值

java - JButton 上的动画 GIF,鼠标悬停时播放

java - 如何制作保存按钮

javascript - 将数据添加到数组的 Javascript 数组

java - OpenCV 的 Java 绑定(bind) Mat.get() 给出了奇怪的结果

java - 从另一个类更改 JTextArea 值

java - 具有未知动态属性的 jackson 反序列化

java - 使用泛型和 rxjava 的不兼容类型

java - 如何找到部署在 weblogic 服务器上的 war 文件的部署日期

java - QuerySyntaxException 但实体已映射