请在下面的链接中查看我的图片,然后在下面阅读以了解有关我的问题的更多详细信息。
想象一下,这是一个用 JSplitPane 分成两部分的基本框架,默认情况下,当您调整框架大小时,灰色部分会改变它的大小,但我希望白色部分根据框架大小调整大小。
任何对正确方向的帮助将不胜感激,因为我现在正在做一个项目,我正在尝试各种奇怪的东西,为我在新的一年里设定的最大项目做准备。:)
问候塞隆
请在下面的链接中查看我的图片,然后在下面阅读以了解有关我的问题的更多详细信息。
想象一下,这是一个用 JSplitPane 分成两部分的基本框架,默认情况下,当您调整框架大小时,灰色部分会改变它的大小,但我希望白色部分根据框架大小调整大小。
任何对正确方向的帮助将不胜感激,因为我现在正在做一个项目,我正在尝试各种奇怪的东西,为我在新的一年里设定的最大项目做准备。:)
问候塞隆
您需要使用setResizeWeight
JFrame resize 时让左右占用额外空间或缩小尺寸,示例代码如下:
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JSplitPane;
public class TestJSplitPane {
private void init(){
JFrame frame = new JFrame();
frame.setLayout(new BorderLayout());
JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
splitPane.setRightComponent(new JButton("Here I Am"));
splitPane.setLeftComponent(new JButton("Me Too"));
splitPane.setResizeWeight(0.5);
frame.add(splitPane, BorderLayout.CENTER);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public static void main(String[] args) {
new TestJSplitPane().init();
}
}
setResizeWeight的 Java 文档。
希望这可以帮助。