java - 调整 Jpanel 网格列的大小

标签 java swing jframe jpanel

我想知道是否可以调整 Jpanels 的大小,我已经搜索了一段时间,但没有找到我要找的东西。

这是我的代码:

    JFrame frame = new JFrame("My Frame");
    JPanel panel = new JPanel(new GridLayout(1,2)); // split the panel in 1 rows and 2 cols

    panel.add(new PixelPanel());
    panel.add(new MyPanel());

    frame.getContentPane().add(panel);

    frame.setVisible(true);
    frame.setSize(1920, 1080);

这将创建一个布局,其中 2 列彼此相邻,边框正好在中间分隔 2 个 Jpanels。现在很多软件都为用户提供了调整 2 个面板宽度大小的选项。因此,通过捕获边框并将其向左或向右拉动,一个面板将变大,而另一个面板将向下滑动。是否有任何内置功能?如果没有,将这种行为构建到 Jpanel 上会更好,还是制作自定义面板系统会更好?

提前谢谢您!

(如果我之后的行为不清楚,我可以制作一个 gif 来解释它)

最佳答案

JSplitPane 正是您所寻找的。

JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, new PixelPanel(), new MyPanel());

关于java - 调整 Jpanel 网格列的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54372293/

相关文章:

java - 具有 JPA 持久性的 Spring 状态机 - 存储库使用

java - 无法使用 mvn spring-boot :build-image 构建 war 文件的镜像

java - HSQL 中是否有 'addScript' 的最大记录数?

java - 如何将 scrollPane 放在 BoxLayout 上?

java - JFrame、toFront()、 Action 监听器

java - JFrame 在多个屏幕上的位置

java - 了解在 Android 中更改点击叠加标记的代码

java - JDialog 状态的 Action 监听器

java - ActionListener 类的引用问题

java - 此方法(setSize、setDefaultCloseOperation... 对于 HelloFrame 类型未定义