package demon007;
import java.awt.Color;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class MyFrame {
public static void main(String[] args){
JFrame frame=new JFrame("My Frame"); //创建一个JFrame的实例
frame.setSize(280, 300); //设置JFrame的大小
frame.getContentPane().setBackground(Color.RED); //设置JFrame的背景色
frame.setVisible(true); //显示JFrame
JPanel panel=new JPanel();
panel.setSize(10, 10);
panel.setBackground(Color.yellow);
frame.add(panel);
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
System.out.println("Press any key to exit.");
try {
String s=in.readLine(); //等待用户的输入一关闭窗口
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
System.exit(0); //强行关闭并退出
}
}
}
------解决方案--------------------
你可以给frame设置下布局再试试
------解决方案--------------------
还有就是直接把panel的设置为透明的panel.setOpaque(false);
------解决方案--------------------
还有就是去掉画面的默认布局
import java.awt.Color;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class MyFrame {
public static void main(String[] args) {
JFrame frame = new JFrame("My Frame"); // 创建一个JFrame的实例
frame.setSize(280, 300); // 设置JFrame的大小
frame.getContentPane().setBackground(Color.RED); // 设置JFrame的背景色
frame.setVisible(true); // 显示JFrame
frame.setLayout(null);
JPanel panel = new JPanel();
panel.setSize(10, 10);
panel.setBackground(Color.yellow);
frame.add(panel);
// panel.setOpaque(false);
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Press any key to exit.");
try {
String s = in.readLine(); // 等待用户的输入一关闭窗口
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
System.exit(0); // 强行关闭并退出
}
}
}
也可以
------解决方案--------------------
+1