zoukankan      html  css  js  c++  java
  • 第十一周课程总结

    一、AWT简介

    AWT主要分为三类

    1.组件:Component

    2.容器;Frame

    3.布局管理器:LayoutManager

    二、Swing简介

    Swing都保存在javax.swing中,所有组件都是从JCompent中扩展出来的。此类实际上是java.awt.Component的子类。如图所示

    三、基本容器JFrame

                                                              JFrame类的常用操作方法

                              方法 类型 描述
    public JFrame() throws HeadlessException 构造 创建一个普通的窗体对象
    public JFrame(String title)throws HeadlessException 构造 创建一个窗体对象,并指定标题
    public void setSize(int width,int heigth) 普通 设置窗体大小
    public void setSize(Dimension d) 普通 通过Dimension设置窗体大小
    public void setBackground(Color c) 普通 设置窗体的背景颜色
    public void setLocation(int x,int y); 普通 设置组件的显示位置
    public void setLocation(point p) 普通 通过Point来设置组件的显示位置
    public void setVisible(boolean b) 普通 显示或隐藏组件
    public Component add(Component comp) 普通 向容器中增加组件
    public void setLayout(LayoutManager mgr) 普通 设置布局管理器,如果设置为null表示不使用
    public void pack() 普通 调整窗口大小,以适合其子组件的首选大小和布局
    public Container getContentpane() 普通 返回此窗体的容器对象

    注意点:

    JFrame类构造器创建的窗体是不可见的,需要开发人员别写特定的代码才可见,(很多对窗体的操作要在可视之前对其进行完成,否则就会在运行时抛出异常)=>true

    Dimension类的常用方法

    方法 类型 描述
    public Dimension() 构造 创建一个Dimension
    public void setSize(double width,double height) 普通 设置显示的宽和高
    public void setSize(int width,int heigth) 普通 设置显示的宽和高
    public double getWidth() 普通 返回组件的宽
    public double getHight() 普通 返回组件的高

    个人理解:表示一个(单个)组件的大小(该类封装了一个构件的高度和宽度)该类的高度、宽度值都是一个整数,表明有多少个像素点。多用于表示 GUI 控件等的大小。

    point类的常用方法

    方法 类型 描述
    public Point() 构造 在坐标原点创建对象
    public Point(int x,int y) 构造 在指定的坐标的创建对象
    public void setLocation(int x.int y) 普通 设置X、Y坐标
    public void setLocation(double x,double y) 普通 设置X、Y坐标
    public void move(int x,int y) 普通 将此组件移动到指定的坐标位置,此方法与setLocation(int,int)相同
    public void translate(int dx,int dy) 普通 p平移(x,y)位置的点,沿x轴平移dx,沿y轴平移dy,移动后得到点(x+dx,y+dy)

    asd 

    四、标签组件JLabel

    1.使用一个标签

       JFrame frame = new JFrame("WWW.baidu.com");
             JLabel b = new JLabel("妈妈",JLabel.CENTER);
            
             frame.add(b);
             frame.setSize(300,160);
             frame.setLocation(300,200);
             frame.setVisible(true);

    2.在JLabel中设置图片

    方法 类型 描述
    public ImageIcon(byte[] imageData) 构造 将保存图片信息的byte数组设置到ImageIcon中
    public ImageIcon(String filename) 构造 通过文件名称创建ImageIcon对象
    public ImageIcon(String filename,String description) 构造 设置图片路径以及图片的简单描述

    五.按钮组件

    JButton but = new JButton("按钮")
    

      

    六.布局管理器

    FlowLayout类

    使用此布局方式会使所有组件像流水一样一次进行排列

    BorderLayout类

    将一个窗体的版面划分成为东,西,南,北中五个区域

    GridLayout

    表格形式排列,使用此布局时候必须设置显示的行数和列数

    CardLayout

    将一组件彼此重叠地进行布局,就像一张张卡片一样,这样每次都只会展示一个界面。

    绝对定位

    如果不想在窗体中指定布局管理器,也可以设置坐标的方式完成布局,在Component中提供了setBounds()方法,可以定位一个组件的坐标,使用X、Y的坐标表示方式,此方法定义如下

    public void setBounds(int x,int y,int width,int hight)
  • 相关阅读:
    【HDU 4305】Lightning(生成树计数)
    【HDU 1150】Machine Schedule(二分图匹配)
    【HDU 2063】过山车(二分图匹配)
    透过Nim游戏浅谈博弈
    [SCOI2010]字符串
    [SCOI2010]传送带[三分]
    [SCOI2010]序列操作[分块or线段树]
    HDU 5306 Gorgeous Sequence[线段树区间最值操作]
    1455: 罗马游戏[左偏树or可并堆]
    Codevs 5914 [SXOI2016]最大值
  • 原文地址:https://www.cnblogs.com/tb-0706/p/11812839.html
Copyright © 2011-2022 走看看