如何在java中按名称获取组件[重复]
Posted
技术标签:
【中文标题】如何在java中按名称获取组件[重复]【英文标题】:how to get a component by name in java [duplicate] 【发布时间】:2016-08-09 04:00:00 【问题描述】:这里是用指定方法编辑的代码。
String value = obj.validateTextFields(txtFields);
public String validateTextFields(JTextField[] txtField)
String res = "";
for(JTextField txtFields : txtField)
if(txtFields.getText().equals("") )
JOptionPane.showMessageDialog(null, txtFields.getName() +" is empty!");
res +=txtFields.getName()+",";
return res;
value是文本字段的名称,如何通过这个名称获取文本字段。
【问题讨论】:
您的问题非常模糊,难以解释和回答。你说的名字是什么意思? “文本字段”是什么意思?您使用的是什么 GUI 库?摇摆? AWT?安卓?其他?请填写重要的详细信息,以便我们更好地了解您的代码/问题/疑问。 好的,我正在使用 swing 库,我创建了一个方法,它返回一个字符串,这个字符串包含 JTextFields 的名称,现在我想通过这个名称获取 JTextField。但是没有这样的方法可以通过名称访问组件。 您可以使用反射来实现,但我不建议这样做。寻找一个验证库 - 有很多。春天是个不错的选择。 我不是想烦人,只是想理解。所以有鉴于此,请edit your question,并提供更相关的代码、更多的背景信息和更详细的信息。显示您参考的方法。并且组件没有“名称”。变量可以,但这不是获取此信息的好方法。最好重组您的程序,以便轻松获取信息。 哪个库适合验证。 【参考方案1】:如果您想将对象与 String 关联以便于检索,一种简单的方法是使用 Map<String, JTextField>
和具体实现作为 HashMap<String, JTextField>
。
然后在您的初始化代码中,使用 Map 的 put(...)
方法将组件及其关联的 String 放入映射中,稍后当您想要检索它时,使用 Map 的 get(...)
方法。
【讨论】:
以上是关于如何在java中按名称获取组件[重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 GridPanel Ext.net Razor 中按名称获取值
如何在Android Firebase实时数据库中按降序获取孩子[重复]
如何使用Java在Selenium WebDriver中按类名选择下拉值[重复]
如何使用 Java 在 selenium webdriver 中打开新选项卡,或者如何使用 selenium webdriver 使用动作类在 selenium 中按 ctrl + T [重复]