Подтвердить что ты не робот

JFrame без рамки рамки, максимальная кнопка, минимальная кнопка и значок кадра

Я хотел бы создать рамку без рамки, максимальную кнопку, минимальную кнопку и значок рамки.

4b9b3361

Ответ 1

Вызовите setUndecorated(true) на JFrame.

Этот метод можно вызвать только в том случае, если кадр не отображается (см. JavaDoc).

enter image description here

Ответ 2

Этот код Объясняет, как вы можете его достичь.

Примечание: setUndecorated (true); в конструкторе.

Вы не можете декомпозировать фрейм, пока он уже отображается.

public class MyFrame extends JFrame {

private JPanel contentPane;
private JTextField textField;

/**
 * Launch the application.
 */
public static void main(String[] args) {

                MyFrame frame = new MyFrame();
                frame.setVisible(true);

}
/**
 * Create the frame.
 */
public MyFrame() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setBounds(100, 100, 450, 300);
    contentPane = new JPanel();
    contentPane.setBackground(Color.ORANGE);
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));


    /* important Statement */
    setUndecorated(true);
}

}

Frame without Border

Ответ 3

Вы можете использовать класс java.awt.Window. A Window как a JFrame, но без границ.

Обратите внимание, что конструктору класса Window в качестве аргумента нужен Frame (java.awt.Frame), но вы можете установить его на null. Вы также можете расширить класс Window, чтобы настроить его следующим образом:

public class MyWindow extends Window{
   public MyWindow(){
      super(null); // creates a window with no Frame as owner
      setBounds(x, y, width, height);
      setVisible(true);
   }
}

В main вы можете создать экземпляр MyWindow вместо Window.

public static void main (String[] args) {
    Window window = new MyWindow();
    // Other stuff in main
}

Надеюсь, это поможет!

Ответ 4

Использовать метод frame.getContentPane(); этот метод возвращает содержимое внутри любого кадра. Но вам нужно бросить его в JPanel. PrintUI использует JPanel, а не JFrame....

Ответ 5

Внутри конструктора вы можете поместить код setUndecorated (true), он исчезнет.

Например://Это конструктор

public freak() {    
    super("Images");
    panel = new JPanel();
    ImageIcon image = new ImageIcon("C:\\Users\\shilu.shilu-PC\\Desktop\\2.jpg");
    label = new JLabel(image);
    add(panel);
    add(label);

    //Main thing is this one
    setUndecorated(true);
    //Just add this code in your constructor
}