Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.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 在GUI上创建边框_Java_Swing_User Interface - Fatal编程技术网

Java 在GUI上创建边框

Java 在GUI上创建边框,java,swing,user-interface,Java,Swing,User Interface,我创建了这个图形界面,缺少的是“个人信息”边框。我知道,setboorder(BorderFactory.createTitledBorder(“PERSONAL INFORMATION”)创建了一个边框,但我如何将标题定位到左上角,并输入正确的尺寸,以便在不使用布局管理器的情况下,线条不会进入按钮下方。非常感谢。 - 这个演示示例展示了所有类型的边框。我想是的 对你有帮助 - 这个演示示例展示了所有类型的边框。我想是的 对你有帮助 默认情况下,标题为顶部/左侧,边框插入由组件

我创建了这个图形界面,缺少的是“个人信息”边框。我知道,
setboorder(BorderFactory.createTitledBorder(“PERSONAL INFORMATION”)
创建了一个边框,但我如何将标题定位到左上角,并输入正确的尺寸,以便在不使用布局管理器的情况下,线条不会进入按钮下方。非常感谢。

    -

  • 这个演示示例展示了所有类型的边框。我想是的 对你有帮助

    • -

  • 这个演示示例展示了所有类型的边框。我想是的 对你有帮助


  • 默认情况下,标题为顶部/左侧,边框插入由组件
    getPreferred/Miniumum/MaximumSize
    方法自动计算,无需使用布局管理器。“那就是你失去我的地方。javagui可能必须在许多平台上工作,在不同的屏幕分辨率上&使用不同的plaf。因此,它们不利于部件的精确放置。若要为一个健壮的GUI组织组件,请改为使用布局管理器,或者使用布局填充和边框。@andrewhompson我们不允许使用任何布局管理器,我们必须通过计算位置和大小手动布局每个组件。我希望我们被允许,这样做会更容易。”…不使用布局管理器。”我可以告诉你如何像。。这符合要求吗?“我们不允许使用任何布局管理器”,这是非常不合逻辑的,如果是老师指定的,他们应该被鞭打。如果雇主指定,找一份新工作。即使有“自定义”布局管理器,它也是“使用布局管理器”。当您将组件布局到适合字体大小、屏幕分辨率等的位置时,您将有足够的逻辑证明将该逻辑放入布局管理器是合理的!默认情况下,标题为上/左,边框插入由components
    getPreferred/Miniumum/MaximumSize
    方法自动计算……而不使用布局管理器。“这就是我失去的地方。”。javagui可能必须在许多平台上工作,在不同的屏幕分辨率上&使用不同的plaf。因此,它们不利于部件的精确放置。若要为一个健壮的GUI组织组件,请改为使用布局管理器,或者使用布局填充和边框。@andrewhompson我们不允许使用任何布局管理器,我们必须通过计算位置和大小手动布局每个组件。我希望我们被允许,这样做会更容易。”…不使用布局管理器。”我可以告诉你如何像。。这符合要求吗?“我们不允许使用任何布局管理器”,这是非常不合逻辑的,如果是老师指定的,他们应该被鞭打。如果雇主指定,找一份新工作。即使有“自定义”布局管理器,它也是“使用布局管理器”。当您将组件布局到适合字体大小、屏幕分辨率等的位置时,您将有足够的逻辑证明将该逻辑放入布局管理器是合理的!
       import java.awt.*;
       import javax.swing.*;
       import javax.swing.border.*;
    
    class BorderTest extends JFrame
     {
     public BorderTest()
     {
    setTitle("Border Test");
    setSize(450, 450);
    
    JPanel content = (JPanel) getContentPane(); 
    content.setLayout(new GridLayout(6,2));
    
    JPanel p = new JPanel();
    p.setBorder(new BevelBorder (BevelBorder.RAISED));
    p.add(new JLabel("RAISED BevelBorder"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new BevelBorder (BevelBorder.LOWERED));
    p.add(new JLabel("LOWERED BevelBorder"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new LineBorder (Color.black, 5));
    p.add(new JLabel("Black LineBorder, thickness = 5"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new EmptyBorder (10,10,10,10));
    p.add(new JLabel("EmptyBorder with thickness of 10"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new EtchedBorder (EtchedBorder.RAISED));
    p.add(new JLabel("RAISED EtchedBorder"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new EtchedBorder (EtchedBorder.LOWERED));
    p.add(new JLabel("LOWERED EtchedBorder"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new SoftBevelBorder (SoftBevelBorder.RAISED));
    p.add(new JLabel("RAISED SoftBevelBorder"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new SoftBevelBorder (SoftBevelBorder.LOWERED));
    p.add(new JLabel("LOWERED SoftBevelBorder"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new MatteBorder (new ImageIcon("spiral.gif")));
    p.add(new JLabel("MatteBorder"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new TitledBorder ( new MatteBorder (new ImageIcon("spiral.gif")), "Title String"));
    p.add(new JLabel("TitledBorder using MatteBorder"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new TitledBorder (new LineBorder (Color.black, 5), "Title String"));
    p.add(new JLabel("TitledBorder using LineBorder"));
    content.add(p);
    
    p = new JPanel();
    p.setBorder(new TitledBorder (
      new EmptyBorder (10,10,10,10),
      "Title String"));
    p.add(new JLabel("TitledBorder using EmptyBorder"));
    content.add(p);
    
    setVisible(true);
     }
    
    public static void main(String args[])
    {
    new BorderTest();
    }
    }