gpt4 book ai didi

java - 从动态创建的 JTextFields 获取内容

转载 作者:行者123 更新时间:2023-11-29 03:45:38 26 4
gpt4 key购买 nike

我正在学习 Java 和 Swing,但在使用 JTextField 时遇到了一些问题。在我的程序中,我想动态添加一些带有一些文本的 JTextFields:

while( (ln = bufFile.readLine()) != null ) {
// inIdPanel is JPanel
inIdPanel.add(new JTextField(ln));
}

而且效果很好。但是,这些JTextFields 的内容可以被用户修改,稍后我想从它们中调用getText()。这可能吗?我该怎么做?

我看到了这个问题:Java Swing: JButton creates new JTextField(s)但这还不足以解决我的问题(我认为在我的案例中使用数组不是一个好主意,但也许我错了)。

最佳答案

您不能调用 getText() 的原因是您在创建 JTextField 时没有存储对它的引用。您将需要使用 arraycollection在创建它们时存储 JtextField,以便稍后调用它们的方法。 集合数组 更容易,因为您不知道要读取多少行,所以您希望它能够增长。

List<JTextField> fields = new ArrayList<JTTextField>();
while( (ln = bufFile.readLine()) != null ) {
JTextField field = new JTextField(ln);
inIdPanel.add(field);
fields.add(field);
}

然后你可以调用所有的.getText()

for(JTextField field: fields){
System.out.println(field.getText());
}

关于java - 从动态创建的 JTextFields 获取内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11076415/

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