在Java中,容器ScrollPane的默认布局管理器是BorderLayout
但是可以改变ScrollPane的布局管理器吗?
我的一个程序如下:
import java.awt.Component;
import java.awt.Container;
import java.awt.Window;
import java.awt.ScrollPane;
import java.awt.TextComponent;
import java.awt.TextField;
import java.awt.Button;
import java.awt.LayoutManager;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Frame;
public class ScrollPaneTest
{
public static void main(String[] args)
{
Frame f = new Frame("测试窗口");
ScrollPane sp = new ScrollPane(ScrollPane.SCROLLBARS_ALWAYS);
sp.setLayout(new FlowLayout());
sp.add(new Button("单击我"));
sp.add(new TextField(20));
f.add(sp,BorderLayout.NORTH);
f.setBounds(30,30,250,120);
f.pack();
f.setVisible(true);
}
}
可以编译通过,但是在运行过程中发生了异常,异常如下:
![图片说明](https://img-ask.csdn.net/upload/201605/26/1464250178_201633.png)
请问这是不是说明,ScrollPane的布局管理器只能使用BorderLayout管理器,而不能使用其他的布局管理器呢?希望得到解惑。感谢!