如何使用System.out.println()从方法填充JTextArea?

时间:2012-01-28 06:19:59

标签: java swing jtextarea

我遇到了JTextArea的问题...我有一个通过数据库管理器连接到数据库的方法,并获得带有结果集的哈希表。之后我在控制台中打印了这些值。现在我必须将控制台更改为JTextArea。这是我班上的一个方法:

public void viewSystemProperties(){

    PropertiesDTO pdto = new PropertiesDTO();
    PropertiesManager pMng = new PropertiesDBmanager();

    pdto.setPropDTO(pMng.getProperties().getPropDTO());
    Iterator<String> it = pdto.getPropDTO().keySet().iterator();

    String key = null, value = null;

    System.out.println("\t\t**************************");
    System.out.println("\t\t*    PROPERTY TABLE:     *");
    System.out.println("\t\t**************************\n");

    while (it.hasNext()){

        key = (String)it.next();
        value = pdto.getPropDTO().get(key);
        System.out.println("  " + key + "\t-------------------\t
                                        ["+value+"]\n");      

    }// while

}// viewSystemProperties()

而不是 System.out.println ,它必须在JTextArea中打印...感谢您的帮助。

3 个答案:

答案 0 :(得分:7)

只需创建一个JTextArea对象并使用setText(String t)方法而不是System.out.println()

JTextArea textArea = new JTextArea();
textArea.setText("Mystring");

这里你的Mystring可以是使用StringBuilder的{​​{1}}对象的字符串表示。

toString()

现在使用StringBuilder sb = new StringBuilder(); while (it.hasNext()){ key = (String)it.next(); value = pdto.getPropDTO().get(key); sb.append(" " + key + "\t-------------------\t ["+value+"]\n"); } 方法。

setText()

JTextArea tutorial Java Swing

答案 1 :(得分:2)

使用StringBuffer构建JTextArea的内容。之后使用JTextArea.setText()方法设置内容。

public String viewSystemProperties(){

PropertiesDTO pdto = new PropertiesDTO();
PropertiesManager pMng = new PropertiesDBmanager();

pdto.setPropDTO(pMng.getProperties().getPropDTO());
Iterator<String> it = pdto.getPropDTO().keySet().iterator();

String key = null, value = null;
StringBuffer text = new StringBuffer();
text.append("\t\t**************************");
text.append("\t\t*    PROPERTY TABLE:     *");
text.append("\t\t**************************\n");

while (it.hasNext()){

    key = (String)it.next();
    value = pdto.getPropDTO().get(key);

text.append("  " + key + "\t-------------------\t
                                        ["+value+"]\n"); 

}// while
return text.toString

} // viewSystemProperties()**

textArea.setText(yourClass.viewSystemProperties());

答案 2 :(得分:1)

您可以使用StringBuffer课程。制作一个StringBuffer变量并继续附加您已完成的每个System.out.println()。最后使用setText()方法设置StringBuffer's toString()值。