原样获得JTextArea内容的方法讨论 问题来源:我想把JTextArea里面的内容提取出来打印,但要保持输入的样式不变。先是用getText()取出来放在一个String 里面,然后再打印出来,但是由于JTextArea自动换行的时候没有自动加换行符(本人推测),所以打印出来的页面根本没有按要求换行,我看了javaAPI,没有找到相关方法,要自己写!但试了一个上午也没有实现!可能是小弟太笨,各位高手能提供点意见吗?谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我写了个测试程序: import java.awt.*; import javax.swing.*; public class TestPrint extends JPanel { JTextArea dd = new JTextArea(10,10); public TestPrint(){ this.setLayout(new BorderLayout()); dd.setPreferredSize(new Dimension(600, 300)); add(dd, BorderLayout.SOUTH); } public void paintComponent(Graphics g){ super.paintComponent(g); Graphics2D g2 = (Graphics2D)g; drawTextArea(g2,dd); } public void drawTextArea(Graphics2D g2,JTextArea area) { g2.drawString(area.getText(),120,120); } public static void main(String[] args) { try{ UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); }catch(Exception e){ } JFrame frame = new JFrame(); TestPrint tt = new TestPrint(); frame.setBounds(100, 100, 500, 500); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().add(tt); frame.setVisible(true); } } 就是要自己写drawTextArea方法实现原样输出功能 这个测试程序很简单,没有即时刷新,要在上面面板上显示下面文本域输入的内容得把JPanel放大或放下活动下才可!大家帮我看看怎么写drawTextArea方法才能实现原样输出功能谢谢哈 你是要获得内容还是要把整个JTextArea的样式打印出来。如果只是获得内容的话,直接提取JtextArea的信息,然后保存到一个临时文件中,在提取一行信息保存到临时文件的时候,加一个换行符,依此类推,然后再将临时文件的内容打印出来就可以了。 能否详细解释为什么打印的是A,而不是B 团队遵守Command和Query分离的编码习惯能让后来者快速融入开发 进来看看 帮帮忙 大家都用的什么框架和开源! API中解释浮点数运算的一些疑问 可能又是STATIC闯的货,请帮忙看看,请请大家了。 求助!java.awt.image.ImageObserver imageUpdate 关于使用命令行参数?在线等 怎样将一个textfield中的内容写入一个文件当中 tomcat 目录 获得byte[]创建一个文件...结果文件大小为0 利用jxl解析Excel的时候如何实现Sheet的拷贝?
import javax.swing.*; public class TestPrint extends JPanel {
JTextArea dd = new JTextArea(10,10); public TestPrint(){
this.setLayout(new BorderLayout());
dd.setPreferredSize(new Dimension(600, 300));
add(dd, BorderLayout.SOUTH);
}
public void paintComponent(Graphics g){
super.paintComponent(g);
Graphics2D g2 = (Graphics2D)g;
drawTextArea(g2,dd); }
public void drawTextArea(Graphics2D g2,JTextArea area)
{
g2.drawString(area.getText(),120,120);
}
public static void main(String[] args) { try{
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
}catch(Exception e){ }
JFrame frame = new JFrame();
TestPrint tt = new TestPrint();
frame.setBounds(100, 100, 500, 500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(tt);
frame.setVisible(true);
} }
就是要自己写drawTextArea方法实现原样输出功能
这个测试程序很简单,没有即时刷新,要在上面面板上显示下面文本域输入的内容得把JPanel放大或放下活动下才可!大家帮我看看怎么写drawTextArea方法才能实现原样输出功能谢谢哈
如果只是获得内容的话,直接提取JtextArea的信息,然后保存到一个临时文件中,在提取一行信息保存到临时文件的时候,加一个换行符,依此类推,然后再将临时文件的内容打印出来就可以了。