Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何调整图像显示的边框布局?_Java_Swing_Layout Manager_Border Layout - Fatal编程技术网

Java 如何调整图像显示的边框布局?

Java 如何调整图像显示的边框布局?,java,swing,layout-manager,border-layout,Java,Swing,Layout Manager,Border Layout,我不知道如何描述这个问题,所以我没有搜索so或Google。任何人都有一个好主意命名这个问题,请告诉我 我知道添加一个额外的JPanel会起作用,我想知道我们是否可以调整布局。使用JPanel嵌套两个BorderLayout。外部的一个有两个侧壁和一个中间的“柱”壁,其中有三个侧壁。然后,该中心柱JPanel使用BorderLayout并容纳顶部、底部和中心JPanel e、 g 使用JPanels嵌套两个BorderLayout。外部的一个有两个侧壁和一个中间的“柱”壁,其中有三个侧壁。然后

我不知道如何描述这个问题,所以我没有搜索so或Google。任何人都有一个好主意命名这个问题,请告诉我


我知道添加一个额外的JPanel会起作用,我想知道我们是否可以调整布局。

使用JPanel嵌套两个BorderLayout。外部的一个有两个侧壁和一个中间的“柱”壁,其中有三个侧壁。然后,该中心柱JPanel使用BorderLayout并容纳顶部、底部和中心JPanel

e、 g


使用JPanels嵌套两个BorderLayout。外部的一个有两个侧壁和一个中间的“柱”壁,其中有三个侧壁。然后,该中心柱JPanel使用BorderLayout并容纳顶部、底部和中心JPanel

e、 g


使用JPanels嵌套两个BorderLayout。外部的一个有两个侧壁和一个中间的“柱”壁,其中有三个侧壁。然后,该中心柱JPanel使用BorderLayout并容纳顶部、底部和中心JPanel

e、 g


使用JPanels嵌套两个BorderLayout。外部的一个有两个侧壁和一个中间的“柱”壁,其中有三个侧壁。然后,该中心柱JPanel使用BorderLayout并容纳顶部、底部和中心JPanel

e、 g


谢谢你的努力。但是-“我知道添加一个额外的JPanel会起作用,我想我们是否可以调整布局。”-我想我知道这个解决方案。@bijiDango:你不能通过设置布局的状态来“调整”布局。我想你可以尝试扩展它并改变它的内部工作方式,但我不能肯定这是否可行,因为我没有尝试过,也没有尝试的愿望,因为存在更简单的解决方案。谢谢你的努力。但是-“我知道添加一个额外的JPanel会起作用,我想我们是否可以调整布局。”-我想我知道这个解决方案。@bijiDango:你不能通过设置布局的状态来“调整”布局。我想你可以尝试扩展它并改变它的内部工作方式,但我不能肯定这是否可行,因为我没有尝试过,也没有尝试的愿望,因为存在更简单的解决方案。谢谢你的努力。但是-“我知道添加一个额外的JPanel会起作用,我想我们是否可以调整布局。”-我想我知道这个解决方案。@bijiDango:你不能通过设置布局的状态来“调整”布局。我想你可以尝试扩展它并改变它的内部工作方式,但我不能肯定这是否可行,因为我没有尝试过,也没有尝试的愿望,因为存在更简单的解决方案。谢谢你的努力。但是-“我知道添加一个额外的JPanel会起作用,我想我们是否可以调整布局。”-我想我知道这个解决方案。@bijiDango:你不能通过设置布局的状态来“调整”布局。我想你可以尝试扩展它并改变它的内部工作方式,但我不能肯定这是否可行,因为我没有尝试过它,也没有尝试它的愿望,因为存在更简单的解决方案。
import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.*;

public class MyLayouts {

   private static void createAndShowGui() {
      JPanel centerColumnPanel = new JPanel(new BorderLayout());
      centerColumnPanel.setBorder(BorderFactory.createTitledBorder("Center Column Panel"));
      centerColumnPanel.add(makePanel("North", 400, 100), BorderLayout.PAGE_START);
      centerColumnPanel.add(makePanel("South", 400, 100), BorderLayout.PAGE_END);
      centerColumnPanel.add(makePanel("Center", 400, 200), BorderLayout.CENTER);

      JPanel mainPanel = new JPanel(new BorderLayout());
      mainPanel.setBorder(BorderFactory.createTitledBorder("Main Panel"));
      mainPanel.add(centerColumnPanel, BorderLayout.CENTER);
      mainPanel.add(makePanel("West", 100, 400), BorderLayout.LINE_START);
      mainPanel.add(makePanel("East", 100, 400), BorderLayout.LINE_END);

      JFrame frame = new JFrame("MyLayouts");
      frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
      frame.getContentPane().add(mainPanel);
      frame.pack();
      frame.setLocationByPlatform(true);
      frame.setVisible(true);
   }

   private static JPanel makePanel(String title, int width, int height) {
      JPanel panel = new JPanel();
      panel.setBorder(BorderFactory.createTitledBorder(title));
      panel.add(Box.createRigidArea(new Dimension(width, height)));
      return panel;
   }

   public static void main(String[] args) {
      SwingUtilities.invokeLater(new Runnable() {
         public void run() {
            createAndShowGui();
         }
      });
   }
}