Java 从几个局部变量之一的JTextField获取数据
所以我在读一个文件,我得到了文件中的行数。基于此,我生成了我的接口。现在我需要有能力编辑valus trougth UI。Rows是一个变量,它包含输入文档的行数。当然,下面的代码不起作用。我想将新值写入从中读取的数组Java 从几个局部变量之一的JTextField获取数据,java,swing,jtextfield,parseint,absolutelayout,Java,Swing,Jtextfield,Parseint,Absolutelayout,所以我在读一个文件,我得到了文件中的行数。基于此,我生成了我的接口。现在我需要有能力编辑valus trougth UI。Rows是一个变量,它包含输入文档的行数。当然,下面的代码不起作用。我想将新值写入从中读取的数组 for(int i=0;i<Rows;i++) { //System.out.println("!"+Symbol[1]+"!"); //if(Symbol[i]!=""&&Symbol[i]!=null) // { JTex
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);
}
for(int i=0;i
不要使用例如symbol.setBounds(10,25*i+10,75,20);
使用适当的LayoutManager
,可能最适合您的
用于侦听中的更改
使用,而不是普通的,然后您可以删除关于parsewhere
您可以使用普通但与DocumentFilter
一起使用(删除非数字字符)
可能是正确的Listener
另一种选择是第二点的DocumentListener
为了获得更好的帮助,请尽快发布一篇文章,但我认为DocumentListener
可以解决这个问题
我不知道你想要什么…但问题的标题可能是你的答案?不要让它们成为局部变量..我想阅读一个基于此生成UI的文件,并能够使用JTextFields进行输入问题的描述不清楚…无论如何,如果你想在匿名中使用“buyf”变量,必须将其声明为最终变量内部类。我希望在运行时根据输入文件生成一定数量的JTextFields,然后将这些JTextFields中的值写入一个数组,其中每个JTextField都连接到该数组中的一个且仅连接到一个单元格。该数组是公共的。请遵守java编码约定。看起来您有一个名为symbol的变量代码>和一个名为Symbol