Java 如何将printstream重定向到JTextArea?
我正在编写一个模式生成器,下面是主要代码(模式的字符和步骤由JTextFields提供):Java 如何将printstream重定向到JTextArea?,java,swing,io,system,jtextarea,Java,Swing,Io,System,Jtextarea,我正在编写一个模式生成器,下面是主要代码(模式的字符和步骤由JTextFields提供): String chstrin=ch.getText(); 字符c=chstrin.charAt(0); int n=Integer.parseInt(st.getText()); 对于(int i=0;i,如果JTextArea的名称为res;则: for(int i = 0; i <= n; ++i) { for(int k = 0; k < i*2-1; ++k) r
String chstrin=ch.getText();
字符c=chstrin.charAt(0);
int n=Integer.parseInt(st.getText());
对于(int i=0;i,如果JTextArea的名称为res;则:
for(int i = 0; i <= n; ++i)
{
for(int k = 0; k < i*2-1; ++k)
res.setText(res.getText()+c);
res.setText(res.getText()+"\n");
}
for(int i=0;i如果您只想将文本发送到JTextArea
而不是控制台,只需执行以下操作
JTextArea res = new JTextArea();
....
String chstrin=ch.getText();
char c=chstrin.charAt(0);
int n = Integer.parseInt(st.getText()) ;
for(int i = 0; i <= n; ++i)
{
for(int k = 0; k < i*2-1; ++k) {
res.append(String.valueOf(c));
}
res.append("\n");
}
上面的代码有什么问题吗?是与关于JTextArea
的问题有关吗?还是您只是不知道如何在JTextArea
中设置文本?是的,我不知道在这种情况下如何将输出发送到JTextArea。我尝试了res.append(“+c”)但是它完全失败了。请帮助@peeskilletta看看我的答案。你应该使用append
方法生成连续的文本行。无法识别res.append(c);表示字符无法转换为字符串。请使用string.valueOf(c)
res.append(string.valueOf(c))
我真的很抱歉耽搁了。现在开心吗@iShaalan?
JTextArea res = new JTextArea();
....
String chstrin=ch.getText();
char c=chstrin.charAt(0);
int n = Integer.parseInt(st.getText()) ;
for(int i = 0; i <= n; ++i)
{
for(int k = 0; k < i*2-1; ++k) {
res.append(String.valueOf(c));
}
res.append("\n");
}
JTextArea res = new JTextArea();
res.setLineWrap(true);
res.setWrapStyleWord(true);