加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

java swing中的组件和容器

(2010-12-06 20:36:52)
标签:

it

分类: java学习

1,容器是包含一组组件的东西,容器还可以包含于其他容器中。为了显示组件,它必须包含于容器,所以有容器的层次结构,顶部就是顶级容器。

2,顶级容器有:Jframe(应用程序的顶级容器),Japplet(applet的顶级容器),Jwindow,Jdialog它们不是继承自Jcomponent而是继承AWT类中的Component和Container。它和swing其他组件不一样 它是重量级组件。

3,顶级容器的窗格,有:玻璃窗格,内容窗格,分层窗格。玻璃窗格:允许用户改变整个窗格而不是响应一个组件。分层窗格:为组件提供深度值,决定组件的覆盖关系。与用户交互的是内容窗格,添加的组件就是添加到内容窗格。通常内容窗格是Jpanel的实例;

4,布局管理器;管理组件在容器中的位置;它们有FlowLayout(定位组件左右,上下),BorderLayout(定位组件在边框和还是中心),GridLayout(网格中布局),GridBagLayout,BoxLayout,SpringLayout。其中BorderLayout是内容窗格默认布局器,用了5个位置:东西南北中(默认是中心)

下面是一个swing的例子

//swing简单示例
import javax.swing.*;
class Dem_swing
{
 Dem_swing()
 {
  JFrame jfr=new JFrame("a simple demo");//产生一个顶级容器
  jfr.setSize(500,100);//设置容器的宽50,高100
  jfr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//终止并关闭程序 当用户关闭窗口时候
  JLabel jlab=new JLabel("a label");//定义个标签
  jfr.add(jlab);//向内容窗格添加标签
  jfr.setVisible(true);//让框架可见
 }
 public static void main(String argc[])
 {
  SwingUtilities.invokeLater(new Runnable()
      {
       public void run()
       {
        new Dem_swing();
       }
      });//创建一个实例
 }
 
}

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有