早期的java版本. 需要先获得内容面板getContentPane,然后才能向JFram添加组件.
frame.getContentPane().add(child)
后来的java版本, 已经简化为可以直接向JFrame添加组件了.(实际上还是向内容面板进行了添加,只是代码上简洁了).
frame.add(child)
这些知识,你也可以通过阅读java源代码的注释里获得.
java源码里的描述
在JPanelp=new
JPanel(new
BoxLayout(getContentPane(),BoxLayout.Y_AXIS))
下面添一句:
this.getContentPane.add(p,BorderLayout.CENETR),而不应该把它写在p.add(b)下面,因为JPanel是中间容器,必须要先加到窗体等容器才可以向里面添加组件.
在学习Swing 图形化界面的时候,会出现标签组件---JLabel,而在容器JFrame当中进行设置的时候,可以添加图片,此图片可以充当标签,那么我们还需要一个接口,那就是Icon接口,专门来接收图片的!现在通过步骤来解决如何将图片添加到标签组件中!
第一步: 创建JFrame容器,并设置标题
第二步: 定义字符串类型的图片路径,目的为ImageIcon类传参
第三步:实例化Icon接口对象,通过子类ImageIcon来完成。
第四步:创建JLabel对象,传入Icon对象和设置在容器当中的位置。
第五步: 设置容器的大小、背景颜色、并显示出来!
具体代码如下:
public class JLabelDemo {
public static void main(String[] args) {
//实例化JFrame对象,并设置标题
JFrame f = new JFrame("我的窗体")
//定义图片路径
String picPath = "d:" + File.separator + "haha.gif"
//实例化Icon对象,并传入图片路径
Icon icon = new ImageIcon(picPath)
// 实例化标签对象,传入Icon对象,并设定位置。
JLabel lab = new JLabel(icon,JLabel.CENTER)
lab.setBackground(Color.YELLOW) //设置窗体的背景颜色
f.add(lab) //将组件件入到JFrame面板之中
f.setSize(600,360) //设置窗体的大小;
f.setLocation(300,200) //设置窗体出现的位置
f.setVisible(true) //让窗体显示出来。
}
}