2016-11-23 92 views
0

我试图访问JFrame中的所有组件文本,但使用我发现的方法我无法做到。Java设置/获取JFrame中的所有组件的文本

for(Component c : this.getComponents()) { 
     c.setText(TRNASLATE(c.getText())); 
     // does not work: no set and getText methods 
    } 

是否有任何方法获取或设置组件的文本?

之前你问:我想不必手动列出它的组件和设置他们的文本翻译在JFrame元素(这需要很长的时间来一一列举了一个接一个)

对不起,我英语。

回答

0

您可以使用instanceof来检查组件是否为某种类型,即对其进行类型转换。大多数组件都有一个getText()方法。

实施例:

for(Component c : this.getComponents()) { 
     if(c instanceof JLabel){ 
      JLabel label = (JLabel) c; 
      String text = c.getText(); 
     } 
} 

重复instanceof根据需要尽可能多的组件类型。

相关问题