如下是我的绘制string对象的代码
public void paint(Graphics g) {
// TODO 自动生成的方法存根
g.drawString(msg, x, y);
System.out.println(msg);
}
其中
msg = “***********\n####”;
在控制台输出是
***********
####
但是在java applet输出是
***********####
也就是说在java applet中没有输出我预想的换行符
这是为什么呢?我需要如何修改我的代码才能让java applet的输出和在控制台输出的一样
------解决思路----------------------
Applet里面不要使用:System.out.println(msg);
可以通过类似下面的方法实现改行:
g.drawString(msg1, x, y);
g.drawString(msg2, x, y+20);
------解决思路----------------------
你是希望 drawString(msg, ...) 时也能换行?似乎不回吧,它计算字符串占据的空间时估计不会考虑到换行这回事,所以你还是按楼上推测的办法先把字符串分割成两部分来 drawString 吧。Java 2D 绘图中任何操作都是“画图形符号”,没有人会把它“当成字符”,不是字符当然就不存在换行这回事,不信你去 QQ 截图时在上面写几个字看看它是不是也一样不给你换行。