我应该使用哪个Java文本组件来调整大小以适应调整大小的框架?
我有一个JTabbedPane和一个JTextArea,我希望Textareas/Panes调整窗口大小以适应窗口大小。我该怎么做呢?我也很模糊,如果它是正确的文本组件使用。我应该使用哪个Java文本组件来调整大小以适应调整大小的框架?
真的被困住了。
编辑:我设置显式大小为一个愚蠢的哑巴。我已经完成了所有工作。我所做的是将JScrollPane的视口设置为JTextArea,并删除所有明确的大小。
谢谢!
您可以使用任何您喜欢的组件。所有JComponents
都可以使用调整大小的父容器调整大小。你只需要选择正确的LayoutManager
。
根据您想要的一切设置,我想你会想你的JTabbedPane的添加到您的JFrame
像这样:
JTabbedPane jtp;
JFrame frame;
// JFrame's default layour is border layout.
frame.add(jtp, BorderLayout.CENTER);
这将导致JTabbed
窗格为占用所有的空间JFrame
。
您还需要将您的JTabbedPane
的布局管理器设置为BorderLayout
,并添加到JTabbedPane的任何标签都需要有一个BorderLayout
。
要设置组件的布局,这样做:
JComponent anyComponent;
anyComponent.setLayout(new BorderLayout());
看一看的Java LayoutManager tutorials以获取更多信息。
我应该提到,我建议BorderLayout
的原因是因为任何添加到BorderLayout的CENTER
的组件都会自动占用任何边界不占用的空间。而且,由于您没有向其他任何边界(NORTH,SOUTH,EAST,WEST)添加任何内容,因此中心的组件将占据整个空间。
每个JComponent都会在其所在容器调整大小时自动调整大小。
这不是一个正确的组件问题,但更多的是使用哪个LayoutManager。 将组件添加到容器时,可以设置最小大小,默认大小和最大大小。
在调整容器大小时,组件将自动缩放,直到达到所需的最大大小。
如果您需要代码片段,请告诉我,稍后我会启动我的IDE。
欢呼
编辑:jjnguy打我吧..然后NVM:P
这是不是100%正确。 – jjnguy 2010-11-15 15:42:09