从java中的对象获取text属性

时间:2016-01-16 18:33:23

标签: java swing object jtextfield

我正在使用java中的项目,我有一个Vector,其中包含包含JTextFields,CheckBoxes或blobs的对象。现在我需要能够从这样的文本字段中获取文本属性。

我有这段代码:

for(int i = 0; i < gridValues.size(); i++) {
        Object value = gridValues.elementAt(i);
        if (value instanceof JTextField)
        {

        }
} 

我不确定如何从值Object获取文本。当我在列表中查看JTextField类型的第一个项目时,它会出现在if语句中,但现在我应该从tis对象获取text属性,但我不知道如何。 gridValues是带有可能的文本字段,复选框和blob的Vector。

2 个答案:

答案 0 :(得分:2)

根据the javadoc,可以通过调用JTextComponent方法获取getText()的文字。

答案 1 :(得分:0)

首先将值转换为JTextField,然后在其上调用getText(),您将从value获取文本:

// after checking that value in fact refers to a JTextField
String text = ((JTextField)value).getText();

如,

if (value instanceof JTextField) {
    String text = ((JTextField)value).getText();
    // here use text for whatever it's needed for
}

但你应该考虑改变你的程序设计,因为它在集合中使用混合类型会产生一个非常脆弱的程序,换句话说,一个程序很可能在任何时候发生微小变化时都会有错误。