【求助】JScrollPane与Container的区别

jiaoxiaogu 2008-11-03 11:26:14
我有一个程序:
****************** a.java ******************
01.import java.awt.Container;
02.import javax.swing.*;
03.public class a extends JApplet
04.{
05. public void init()
06. {
07. JTextArea outputArea=new outputArea();
08. 1.JScrollPane scroller=new JSsrollPane(outputArea);
09. 2.Container container=getContentPane();
10. container.add(outputArea);
11. }
12. public void start()
13. {
14. ……;
15. }
16.}
****************** a.html ******************
01.<html>
02. <applet code="a.class" width=300 height=300></applet
03.</html>

在程序中,如果使用init中的第2种情况,也就是第九行的container,则applet出现预期效果
但是如果程序中使用了滚动的JScrollPane,也就是init的第一种情况,则applet将只是一个浅灰色的背景,请问这是为什么,两者有什么不同么?
如果我想使用有滚动条的applet,应该怎么修改~
谢谢各位大侠!

...全文
88 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
justinavril 2008-11-03
  • 打赏
  • 举报
回复
import java.awt.*;
import javax.swing.*;

public class TestTextArea extends JApplet{
public void init(){
JTextArea outputArea=new JTextArea();

outputArea.setText("Welcome!HAHAHA\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nHAHAHA");

JScrollPane scroller=new JScrollPane(outputArea);

Container c = getContentPane();

c.add(scroller);
}
}

CNMCNN 2008-11-03
  • 打赏
  • 举报
回复
同意楼上,以前也遇到过
zhujiahill 2008-11-03
  • 打赏
  • 举报
回复
把JScrollPane加到container中就能显示
zhujiahill 2008-11-03
  • 打赏
  • 举报
回复
因为Applet 自身有默认的Container,要在此上面加内容才能够显示。
Container container=getContentPane()得到了Applet的容器(Container)。
而你并没有定义JScrollPane显示的位置(没有把JScrollPane加到任何的容器或框架里),就不会显示了
jiaoxiaogu 2008-11-03
  • 打赏
  • 举报
回复
一楼大哥,问题是如果是我用了JScrollPane以后,程序编译可以通过,但是运行出来啥都没有~
这是为啥?
jiaoxiaogu 2008-11-03
  • 打赏
  • 举报
回复
么有人理俺~
是太难了,还是太简单了~~
justinavril 2008-11-03
  • 打赏
  • 举报
回复
JScrollPane自带了滚动条的
JScrollPane是Container的子类
jiaoxiaogu 2008-11-03
  • 打赏
  • 举报
回复
原来如此,谢谢justinavril 和zhujiahill ~

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧