Java 里面 把一个panel 添加到 一个Frame里面的时候,为什么Panel的大小不可控制? Rt 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Java的Frame,默认采用BorderLayout布局模式,这样可以自适应大小。如果你喜欢绝对定位模式,可以用:Frame.setLayout(null);不过这样的话,所有控件都必须设置其 位置和大小:setBounds(); 你是用了 GridBagLayout布局了吧, 另外用的是netbeans还是eclipse工具?改下布局试试。 import java.awt.*; import javax.swing.*;public class JF extends JFrame { JPanel jp=(JPanel)this.getContentPane(); public JF() { jp.setLayout(null);//不设置的话是无法设置jpanel的大小。等同于窗口的大小。 JPanel jpanel=new JPanel(); jpanel.setSize(300,200); jpanel.setBounds(new Rectangle(50,50,300,200));//设置jpanel的左边距、上边距、长度、高度,在jp没设置setLayout(null);是无效的 jpanel.setBackground(Color.GRAY); jpanel.setBorder(BorderFactory.createEtchedBorder(Color.BLUE, Color.BLUE)); jp.add(jpanel); } public static void main(String[] args) { JF frame=new JF(); frame.setSize(500,400); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } } shutdownOutput()使用造成Connection Rest 这是什么异常? 结果怎么多了一个2 如何加载图像 有关Integer类对象作用于 >= <= 的问题. 有个未完成的java程序,想和朋友交流一下 高分请教一个向上转型的问题 jtextpane得到焦点的函数是什么?? 学习Java受阻::请问接口和异常的问题 能推荐几本学java的好书吗?? 如何把Iterator<Integer>转换为int型 FileInputStream 路径 拒绝访问
改下布局试试。
import javax.swing.*;
public class JF extends JFrame {
JPanel jp=(JPanel)this.getContentPane();
public JF()
{
jp.setLayout(null);//不设置的话是无法设置jpanel的大小。等同于窗口的大小。
JPanel jpanel=new JPanel();
jpanel.setSize(300,200);
jpanel.setBounds(new Rectangle(50,50,300,200));//设置jpanel的左边距、上边距、长度、高度,在jp没设置setLayout(null);是无效的
jpanel.setBackground(Color.GRAY);
jpanel.setBorder(BorderFactory.createEtchedBorder(Color.BLUE, Color.BLUE));
jp.add(jpanel);
}
public static void main(String[] args)
{
JF frame=new JF();
frame.setSize(500,400);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}