Java为什么窗体中的JTextArea,不显示啊

packageTest;importjava.awt.BorderLayout;importjavax.swing.JComboBox;importjavax.swing... package Test;

import java.awt.BorderLayout;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class JFrame2 extends JFrame{
JPanel p;
JTextArea text;
public JFrame2(){
this.setTitle("主窗口");
this.setVisible(true);
this.setBounds(100, 100, 800, 600);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.init();
}

void init(){
p=new JPanel();
text=new JTextArea();
p.add(new JScrollPane(text),BorderLayout.CENTER);
this.add(p);

}
}
展开
 我来答
百度网友485dc0f
2014-10-03 · TA获得超过860个赞
知道小有建树答主
回答量:381
采纳率:100%
帮助的人:326万
展开全部
你的TestArea是在init方法里实例的,但是你的init()是在setVisible之后的,也就是说,人家都显示了之后你才实例化的TestArea。将init方法写在setVisible之前就行了。
另外TextArea需要定义列数和行数。否则只显示一点点出来。
追问

原来是JPanel和JFrame默认格式不同的问题,谢谢了,这样就好了

     p=new JPanel();
     text=new JTextArea();
     p.setLayout(new BorderLayout());
     p.add(new JScrollPane(text),BorderLayout.CENTER);
     this.add(p);

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式