Java连载121-窗口程序设计GUI编程

一、GUI编程
1.Java提供了java.awt和javax.swing包用于GUI编程,简称为AWT和Swing。
2.AWT属于重量级组件,利用本地操作系统提供的图形库,不跨平台,它的组件种类有限,可以提供基本的GUI设计工具,但是无法实现目前GUI设计所需的所有功能。
3.Swing由纯Java语言编写,属于轻量级组件,可跨平台,是对AWT的加强。
4. AWT中组件可以分为两类:Component和MenuComponent;MenuCompent是所有与菜单相关组件的父类,Component则是除了菜单以外其他AWT组件的父类,她表示一个能够以图形化方式显示出来并且可以与用户交互的对象。
二、容器类
1.Container类(继承自Component)表示容器,它是一种特殊的组件,可以用来容纳其他组件,Container又分为两类,分为Window和Panel.
2.Window类是不依赖其他容器而独立存在的容器,分为两个子类,分别为Frame类和Dialog类
3.Pannel也是一个容器,但是它不能单独存在,只能存在于其他容器中(Window或者它的子类),一个Pannel对象代表了一个长方形的区域,在这个区域中可以容纳其他组件。

package com.bjpowernode.java_learning;
import java.awt.Frame;
public class D121_1_Component {
  public static void main(String[] args) {
    //建立新窗体对象
    Frame f = new Frame("我的窗体!");
    //设置窗体的宽和高
    f.setSize(400,300);
    //设置窗体在屏幕中所处的位置(参数是左上角坐标)
    f.setLocation(300,200);
    //设置窗体可见
    f.setVisible(true);
  }
}

三、布局管理器
1.组件不能单独存在,必须放在容器中,而组件在容器中的位置和尺寸是由布局管理器来决定的。
2.布局管理器概述
在java.awt包中提供了5种布局管理器,分别为FlowLayout(流式布局管理器),BorderLayout(边界布局管理器),GridLayout(网格布局管理器),GridBagLayout(网格包布局管理器)和CardLayout(卡片布局管理器)。

    java.awt.Frame frame = new java.awt.Frame();
frame.setLayout(new FlowLayout());

3.流式布局管理器
(1)最简单的布局管理器,在这种布局之下,容器会将组件按照添加顺序从左向右放置,当到达容器的边界时,会自动将组件放到下一行的开始位置。这些组件左对齐,居中对齐(默认方式)或者右对齐的方式排列。
(2)下面是FlowLayout的三种构造方法
FlowLayout()
默认居中对齐,水平,垂直的间距为5个单位;
FlowLayout(int align)
指定组件相对于容器的对齐方式,水平,垂直间距默认为5个单位
FlowLayout(int align,int hgap,int vgap)
指定组件的对齐方式和水平,垂直间距。
四、源码:
D121_1_Component.java
D120_2_ParentClassAndInterfaceOfClass.java
https://github.com/ruigege66/Java/blob/master/D120_1_ConstructerOfClass.java
https://github.com/ruigege66/Java/blob/master/D120_2_ParentClassAndInterfaceOfClass.java
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料
121.1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值