我想创建一个无框边框,最大按钮,最小按钮和框架图标。
答案 0 :(得分:46)
答案 1 :(得分:6)
此代码说明了如何实现它。
注意: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);
}
}
答案 2 :(得分:1)
你可以java.awt.Window
课程。 Window
就像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
}
我希望这有帮助!
答案 3 :(得分:1)
在构造函数中,您可以放置代码setUndecorated(true),它将消失Frame。
例如: //这是构造函数
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
}
答案 4 :(得分:0)
使用方法frame.getContentPane(); 此方法返回任何帧的内容。 但是你需要把它投射到JPanel中。 PrintUI使用JPanel而非JFrame ....