Share this page 

Have borders on a JWindow/JFrameTag(s): Swing

You can't have a border directly on a JWindow or JFrame. You need to put a JPanel with the desired border using the default JWindow/JFrame LayouManager (a BorderLayout). Then the JPanel is extended giving the impression that its borders are the JWindow one.
import javax.swing.*;
import javax.swing.border.*;
import java.awt.event.*;
import java.awt.*;

public class MyWindow{
  public static void main(String s[]) {
    JWindow win = new JWindow();
    JPanel pan = new JPanel();
    pan.setBorder(new LineBorder(;
    pan.setLayout(new FlowLayout());
    pan.add(new JButton("Hello"));
    pan.add(new JButton("World"));