gpt4 book ai didi

java - 从 JTextField 获取数据,它是几个局部变量之一

转载 作者:行者123 更新时间:2023-12-04 05:30:57 24 4
gpt4 key购买 nike

所以我正在阅读一个文件,我得到了该文件中的行数。基于此,我生成了我的界面。现在我需要能够通过 UI 编辑值。 Rows 是具有输入文档行数的变量。当然下面的代码不起作用。我想将新值写入我从中读取的数组。

for(int i=0;i<Rows;i++)
{
//System.out.println("!"+Symbol[1]+"!");
//if(Symbol[i]!=""&&Symbol[i]!=null)
// {
JTextField symbol = new JTextField(6);
symbol.setText(Symbol[i]);
symbol.setBounds(10,25*i+10 , 75, 20);
symbol.setEditable(false);
frame.add(symbol);
JTextField buyf = new JTextField(4);
buyf.setText(String.valueOf(buy[i]));
buyf.setBounds(95, 25*i+10, 50, 20);
buyf.setEditable(true);
buyf.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(ActionEvent ae) {
buy[i]=Integer.parseInt(buyf.getText());
}
});
frame.add(buyf);
}

最佳答案

  • 不要使用 AbsoluteLayout例如symbol.setBounds(10,25*i+10 , 75, 20);正确使用 LayoutManager ,也许 GridLayout最适合您的...
  • 使用 DocumentListener用于监听 JTextComponents 中的更改
  • 使用 JFormattedTextField with Number formatter , 而不是简单的 JTextField ,然后您可以删除有关 parseWhatever 的所有内容
  • 您可以使用普通的 JTextField但与 DocumentFilter (删除非数字字符)
  • ActionListener可能是正确的 Listener另一种选择是 DocumentListener在第二点
  • 尽快发布 SSCCE 以获得更好的帮助,但我认为 DocumentListener可以解决
  • 关于java - 从 JTextField 获取数据,它是几个局部变量之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12639162/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com