-
2021-02-28 18:22:32
java组件和容器.
java.awt包提供了基本的java程序的GUI设计工具。主要包括下述三个概念:
组件(java.awt.Component),许多组件类的父类
封装了组件通用的方法和属性,如图形的组件对象、大小、显示位置、前景色和背景色、边界、可见性
相应的成员方法包括:
getComponentAt(int x,int y),getFont(),getForeground(),getName(),getSize()
paint(Graphics g),repaint(),update()
setVisible(boolean b),setSize(Dimension d),setName(String name)等
容器Container,是Component的子类
容器本身也是一个组件,具有组件的所有性质
主要功能:容纳其它组件和容器
布局管理器LayoutManager
每个容器都有一个布局管理器
当容器需要对某个组件进行定位或判断其大小尺寸时,就会调用其相应的布局管理器
常用容器
一个Container可以容纳多个组件,使它们成为一个整体
可以简化图形化界面的设计,以整体结构来布局界面
所有容器都可以通过add()方法向容器中添加组件
有三种类型的容器:Window、Panel、ScrollPane,常用的有Panel、Frame、Applet
Frame java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
一般我们要生成一个窗口,通常是用Window的子类Frame来进行实例化,而不是直接用Window类。
Frame的外观就像我们平常在windows系统下见到的窗口,有标题、边框、菜单、大小等等
每个Frame的对象实例化以后,都是没有大小和不可见的,必须调用setSize()来设置大小,调用setVisble(true)来设置窗口为可见的。
AWT在实际的运行过程中是调用所在平台的图形系统,因此同样一段AWT程序在不同的操作系统平台下运行锁看到的图形系统是不一样的。
Panel
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Panel
更多相关内容 -
Java中组件和容器是什么?两者之间有什么联系?
2021-02-12 20:32:42组件表示能够显示在屏幕上的各种图形化的...以Component为基础的一类层次如下图所示,示意图中的箭头指向超类。这个示意图显示了Component的一些子类,其中有些对我们很重要。我们已经讨论了通往JFrame类的这条链,...组件表示能够显示在屏幕上的各种图形化的实体。组件是Component子类的仔何一个对象正像我们已经看到的,JFrame窗口是一个组件,但不包含其他的子类。在研究特定的组件之前。我们先看一看表示组件的类组之间的一般关系。以Component为基础的一类层次如下图所示,示意图中的箭头指向超类。
这个示意图显示了Component的一些子类,其中有些对我们很重要。我们已经讨论了通往JFrame类的这条链,其他的分支是新的。所有由Container派生的类都可以包含Component派生的任何类的对象,通常被称作容器(Container).由于Container类是Coinponen类的子类,每个容器对象也是一个Component,所以一个容器又一可以包含另外一些除Window类私其子类以外的容器,即Window类型(或子类)的对象不能包含在其他的容器中。如果你这样做,就会出现一个异常。JCornponent类是窗口中GUI部分使用的所有Swing组件的基础:
由于这个类是由Container派生来的,所以,全部的Swing组件都是容器。
正像你所看到的,JApplet类是所有Swing小应用程序的基类。它从Component通过cotainer类派生而来它还从扩展、改进的旧Applet类中继承了方法。你应该注意到JApplet,JFrarme,
JDialog、Jcomponet类和其子类都在javax.swing包中。Applet类在java.applet中听有其他的类在java.awt.java.applet包很小,只包含一个类加上3个相关的接口,我们并不需要直接使用它。我们常常使用JApplet类定义小应用程序,这比Applet更有意义。
Window和Frame组件
JFrame对象和Window对象之间的基本区别是,JFrarne对象描述的是应用程序的主窗口,而window对象不是这样。在你创建window对象之前,总需要一个JFrame对象。
由于Jdialog类直接由Window类派生而来,所以你只能在JFrame对象中创建应用程序中的JDialog对象除了默认的构造函数外,JDialog类的构造函数通常需要一个JFrarme.对象作为自变量传递进来。JFrame对象称为JDialog对象的父类。JFrame对象有一个可调整大小的边框,它可以包含一个内置的菜单栏,由于JFrame对一象是应用程序中的顶层窗口,所以定义的大小和位置与屏幕有关。以JFrame对象为父类的JDialog对象的定位与其父类相关。
让我们总结一下,通常你将如何使用我们已经讨论过的层次中的关键类。
正像我们所说的,JApplet,
JFrame和JDialog类都是容器,这是因为它们都以Containe作为基类,所以原则上可以包含任何类的组件。由于它们最终由component派生而来。所以它们自已也都是组件但有些事情并不像组件那么简单,你不能直接地为应用程序或小于程序的GLI将组件添加到程序的JFranme或JApplet对象。让我们看看练习中的的实际工作过程。
窗口面板
当你想在窗口中添加GUI组件或绘图时,通过JFrame对象添加的组件或在其上面绘画的内容显示在又JFrame对象管理的窗口面板中。小应用程序也是如此:概括地讲。窗口面板是一个包含描述窗口区域的对象,他们呢来自几种不同的类型。
我们将使用个大家都称为内容面板的窗口面板。而不使用其他的面板:contcntPane对象之间、其他窗口面板与应用程序本身的关系显示在这里。
正像你所看到的,在JFrame窗口中标题栏下面的区域对应JRootPane对象,这个对象包含了其他的面板。说明中的layeredPane对象是JlayeredPane类型的。这个面板对应窗口中JRootPane对象占据的整个区域。如果窗口有菜单栏的话,还要进行管理。
layerPane中菜单栏下面的区域就是contentPane对象,最典型地是在这里添加GUI组件:你还可以在内容面板覆盖的区域显示文字或进行任何绘画。layeredPane对象拥有特别的属性供高级应用程序使用,它允许使用而板中组件组覆盖另一个组件组的分层方式进行竹理。使用这种功能,你可以控制组件与另一个组件的关联显示。在这里,因为层按从后向前的特定顺序显示,所以。在层中前面的组件将位于屏幕该层的后面。
还有一个辅助的面板没有显示在示意图,这就是glassPane对象。这个对象也对应全部的JRootPane区域。g1assPane象的内容显示在所有其他面板的顶层,因此,这个类可用来很示你想要永远显示在窗口中其他内容之上的组件,例如下拉式菜单、你也可以使用glassPane显示需要频繁更新的图形,如建立动画,当你显示示的内容是动画时,静态的背景可以通过contentPane单独地进行显示。由于每次动画对象需要重画时不需要重新处理背景,所以整个过程效率要高得多。
JIFrame类定义了几个方法以供你引用们几何面板:
这里讨论的表示面板的所有类本身都是Swing的组件,它们在javax,swing包中定义、JApplet对象与JFrame对象的面板参数相同,所以,向小应用程序添加组件或绘图的操作完全一样由JApplet对象定义的小应用程序,也可以拥有应用程序窗口那样的菜单栏。
所有的面板以及菜单栏都是组件,因此在我们开始研究如何向窗口中添加菜单栏或其他组件之前,先更详细地看看一般组件的组成。
考无忧小编推荐:
更多计算机等级考试真题及答案>>>点击查看
想知道更多关于计算机等级报考指南、考试时间和考试信息的最新资讯在这里>>>
本文网址:http://www.k51.com.cn/info/jsjdjks/1802/0126060.html
-
java中的容器组件和非容器组件
2021-02-27 10:17:102、java.awt 与 javax.swing包的区别:① java.awt中使用的图形类都是依赖于系统的图形库的。② javax.swing包使用到的图形类都是sun自己实现,不需要依赖系统的图形库。3、在java中所有的图形类都被称作组件类。...1、java使用到的图形类主要在java.awt 与javax.swing包中。
2、java.awt 与 javax.swing包的区别:
① java.awt中使用的图形类都是依赖于系统的图形库的。
② javax.swing包使用到的图形类都是sun自己实现,不需要依赖系统的图形库。
3、在java中所有的图形类都被称作组件类。
组件的类别:容器组件、非容器组件
1、布局管理器:布局管理就是用于指定组件的摆放位置的。
2、BorderLayout(边框布局管理器)
摆放的风格: 上北 、 下南 、 左西、 右东 , 中
3、Borderlayout 要注意的事项:
① 使用Borderlayout添加组件的时候,如果没有指定组件的方位,那么默认添加到中间的位置上
② 使用BorderLayout的时候,如果东南西北那个方向没有对应的组件,那么中间位置的组件就会占据其空缺的位置
③ 窗体默认的布局管理器就是Borderlayout
4、流式布局管理器(FlowLayout)
流式布局管理器要注意的事项
① 流式布局管理器默认情况是居中对齐的
② panel默认的局部管理器就是FlowLayout
5、表格布局管理器(GridLayout)
注意的事项: 如果表格数量不够使用时,默认会多加一列。
6、卡片布局管理器(CardLayout)
对于JFrame和JWindow这样的顶层框架来说默认的布局管理器是边界布局(BorderLayout);JPanel默认的布局管理器为FlowLayout。
java.awt包中大约有:
FlowLayout 流式布局
BorderLayout 边框式布局
GridLayout 网格布局
CardLayout 卡片布局
GridBagLayout 复杂的网格布局
javax.swing包中大约有如下布局
BoxLayout 盒式布局
OverlayLayout 重叠布局
ScrollPaneLayout 类JScrollPane使用的布局管理器
ViewportLayout 类JViewport使用的布局管理器
-
java中的对象、类、包、模块、组件、容器、框架、架构的概念入门
2021-02-12 21:42:30在Java中有那么一些概念:对象、类、包、模块、组件、容器、框架。这些概念都有一个共同的特点,就是【容纳】。对象(Object)在Java的世界里,对象是通过属性和方法来分别对应事务所具有的静态属性和动态属性的。类...在Java中有那么一些概念:对象、类、包、模块、组件、容器、框架。这些概念都有一个共同的特点,就是【容纳】。
对象(Object)
在Java的世界里,对象是通过属性和方法来分别对应事务所具有的静态属性和动态属性的。
类(Class)
类是用于描述同一类型的对象的一个抽象的概念。
对象和类的关系
类是具有共同的属性名称和行为的一组对象的抽象,而对象则是一个类的真实的例子。
组件(Component)
组件也是抽象的概念,可以理解为一些符合某种规范的类组合在一起就构成了组件。他可以提供某些特定的功能。对于J2EE来说,什么Servlet、JSP、JavaBean、EJB组件都是组件。虽然实际上来说他们都是类,只不过是这些类有他们特殊的规定。
组件和类的关系
符合某种规范的类的组合,就构成了组件。
容器
容器也叫做组件容器。组件容器是一种比较特殊的组件,它可以包含其他的组件。我们可以把组件放在组件容器中。反之,如果一个组件不是组件容器,则其中不能包含其他的组件。组件容器也是一种组件,所以一个组件容器可以放在另一个组件容器中。组件容器的出现使得事情变得复杂了起来。我们可以把组件放在组件容器中,也可以把组件容器放在另一个组件容器里,这样就形成了有层次的组件结构。
可以把普通的组件想象成鸡蛋,而把组件容器想象成篮子。那么,鸡蛋可以放在小篮子里,小篮子和鸡蛋又可以放在大篮子里。于是,篮子里可以有鸡蛋,还可以有其他的篮子。
容器和组件的关系
容器是特殊的组件,是可以包含其他组件的组件。
框架(Framework)
框架就是某种应用的半成品,就是一组组件,供你选用来完成自己的系统。Java框架就是一些类和接口的集合,通过这些类和接口协调来完成一系列的程序实现。框架又被叫做开发中的半成品,它不能提供整个Web应用程序的所有东西,但是有了框架,我们就可以集中精力进行业务逻辑的开发而不用去关心它的技术实现以及一些辅助的业务逻辑。我们熟知的Structs和Spring就是表示层和业务层框架的代表。
框架和组件的关系
框架是一组组的组件构成的。
架构(Structure)
软件架构描述的对象是直接构成系统的抽象组件。各个组件之间的连接则明确和相对细致地描述组件之间的通讯。在实现阶段,这些抽象组件被细化为实际的组件,比如具体的某个类或者抽象。在面向对象领域中,组件之间的连接通常是使用接口(Interface)来实现的。
架构和框架的关系
框架不是架构。架构确定了系统的整体接口、层次划分、不同部分之间的协作等设计考虑。框架比架构更具体,更偏向于技术实现。对于同一架构(比如Web开发中的MVC),可以通过多种框架来实现。
"你只是对我不甚在意。"
-
Java容器的常用组件
2020-10-30 22:48:35Frame组件的特点: ...Panel是AWT中的一个典型的容器,它不能独立存在、必须放在其他容器中的容器。该区域中可以继续盛装其他组件。Panel容器存在的意义在于为其他组件提供空间,Panel容器具有如下3个特点。 -
java图形用户界面编辑常用组件和容器
2021-06-12 14:07:25组件又称控制组件,是图形用户界面中不可再分的最小元素,起功能是与用户完成一次交互操作; 容器是若干个 组件和容器的集合; 容器又分为顶层容器和中间容器; 顶层容器是应用程序必须创建的一个容器,只有在创建... -
【Java Swing开发 组件与布局】
2021-04-19 22:27:03组件及事件处理1 Java Swing概述2 窗口2.1 JFrame常用方法3 常用组件与布局二级目录三级目录4 处理事件二级目录三级目录 1 Java Swing概述 Java通过图形用户界面(GUI: Graphics User Interface) ,用户和程序之间... -
Java基础——GUI——Swing中常用容器和组件
2019-06-20 09:56:081.swing中常用容器 (1)JFrame 常用方法: 1.构造方法: 2.设置窗体可见: 3.设置点击窗体的执行的操作:. ... 4.... 5.获取窗体容器:在容器中添加和删除组件: 做完添加和删除之后最好刷新容器: ... -
java容器组件之间关系
2018-11-19 15:39:27也是一个容器类。这个框子可以嵌入几个玻璃窗。JFrame自带了一个玻璃窗。可以通过语句 Container c=getContentPane(); 获得该内容窗格。 也可以定制一个新的玻璃面板替换原来的自带的玻璃窗,代码如下: JPanel ... -
[疯狂Java笔记]AWT组件和容器的概念
2016-02-29 17:11:502) 而容器在Java图形界面中是一种特殊的组件,顾名思义它就是用来存放其它组件的,比如上面所说的窗口就是一种容器组件,在它里面可以存放按钮、编辑框等组件,这些成为他的子组件; 3) 当然容器里也可以存放... -
Java Swing基础(顶层容器,中间层容器,原子组件)
2020-06-16 14:56:00每个顶层容器都有一个内容面板,通常直接或间接的容纳别的可视组件。 可以有选择的为顶层容器添加菜单,菜单被放置再顶层容器上,但是在内容面板外。 JFrame使用举例 package swing; import java.awt.BorderLayout... -
《JAVA》容器与界面精准布局.ppt
2019-12-31 07:46:3614.2.2 面板容器 javax.swing.JPanel类为一个通用的轻型容器主要用于管理放置其中的GUI组件以形成界面的局部功能再作为一个整体添加到顶层容器或面板容器另一个作用是作为绘图操作的画布 javax.swing.JScrollPane类... -
Spring容器添加组件方式实现
2020-08-25 10:14:58主要介绍了Spring容器添加组件方式实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 -
Java程序设计 任务2 容器组件及布局使用 Java语言边学边做ppt任务b2.ppt
2020-09-10 07:30:23Java语言程序设计 边学边做教程 信息工程学院 第十一章 java图形界面程序 GUI设计 11.1 GUI包组成 11.2容器组件及布局使用 11.3 java事件触发及处理程序设计 11.4经典程序分析 任务2java容器组件及布局怎样使用 问题... -
javax.swing使用总结(组件、容器、布局管理器概念)
2019-03-29 18:40:06最近在看java图形界面设计的内容,关于组件、容器之类的概念,觉得这篇文章写得不错。 参考博客原址: https://blog.csdn.net/qq_38858247/article/details/82950931 第一次转载,转载方法参考博客地址:... -
java-组件及事件处理(概述、窗口、常用组件与布局)
2020-06-13 16:15:01目录(一)Java Swing概述(二)窗口(1)JFrame常用方法(2)菜单条、菜单、菜单项(三)常用组件与布局(1)常用组件(2)常用容器(3)常用布局(四)处理事件(一)事件处理模式(二)ActionEvent事件(三)... -
java ee容器、组件、通信类型简介
2018-10-11 21:01:321.容器规范:容器是组件的运行环境,负责组件的生命周期管理和各组成部分之间的交互协议,定义了各种组件的容器类型以及每种容器提供的服务。并管理组件的生成、调用和销毁,简化了企业级软件开发中复杂的对象... -
java中容器(顶层容器和中间容器)的布局管理器
2020-05-22 20:54:02Java能够以像素为单位对组件进行精确的定位,但是其在不同的系统中将会有一定的显示差异,使得显示效果不同,为此java提供了布局管理器,使编写的图形界面具有良好的平台无关性。 注意:所有的布局管理器均是针对... -
java标签组件与图标(JLabel)
2019-12-17 09:54:20它本支持文本字符串和图标,在应用程序界面中,一个简短的文本标签可以使用户知道这些组件的目的,所以标签在Swing中是比较常用的组件,下面将讲解Swing标签的用法、如何创建标签,以及如何在标签上放置文本与图标 ... -
JavaEE 容器与组件:
2018-12-15 18:40:50但是光有车灯车门没有用,它们不能跑上公路 在java中这些组件就叫做javabean,有点像微软以前的com组件 要特别说明的是,由于任何一个java文件编译以后都是以类的形式存在 所以javabean肯定也是一个类,这是... -
Java常见的线程安全工具容器类(待完善)
2022-01-21 16:30:08容器类 Vector: 与ArrayList进行区分,底层都采取数组的形式,但是Vector多个方法采取重量级锁进行锁定,所以是线程安全的 HashTable:采取重量级锁对方法进行锁定,目前可使用currentHashMap实现线程安全,而... -
Java EE 组件 容器 服务器
2016-11-15 16:07:40Java EE 组件 容器 服务器 一、组件(Component): 组件可以定义为一种自治的、提供外部公共接口的、动态可用的事物处理过程,组件可以用来构建其它组件或者应用程序。简言之,组件就是能完成一定功能的封装体... -
Java swing组件介绍
2018-07-29 14:58:47本文链接: ... Java Swing 图形界面开发(目录) 1. Swing简介 Swing 是 Java 为图形界面应用开发提供的一组工具包,是 Java 基础类的一部分。 Swing 包含了构建图... -
Java_Swing(二)——Swing容器组件
2019-06-03 23:54:01JFrame是用来创建窗口的顶层容器组件,JFrame类主要有以下常用方法: 代码示例: import java.awt.*; import javax.swing.*; public class JFrame_z extends JFrame{ public JFrame_z() { setTitle("JFrame... -
超详细的Java容器、面板及四大布局管理器应用讲解!
2020-08-16 19:05:35本文主要讲解Swing程序设计中容器、面板及四大布局管理器的详细使用、包括实例...之前在进行Java的窗体开发时经常会把容器、面板与布局管理混淆,从而不能正确的使用这三种属性对窗体应用进行布局。所以今天在这里记录. -
Java面板容器组件 之 JPanel
2019-10-14 18:50:57JPanel 类是Java 中一种常用到的中间容器,也是使用最多的Swing 组件之一。JPanel 中不仅可以添加组件和其他面板,还可以将JPanel 作为组件加入到JFrame 中去。JPanel 类从JComponent 类继承。 一、常用构造方法 ... -
博为峰Java技术题 ——JavaSE Java Swing在顶层容器中添加组件Ⅰ
2016-12-18 17:22:19Java Swing组件不能直接添加到顶层容器中,它必须添加到一个与Swing顶层容器相关联的内容面板(ContentPane)上。内容面板其实就是一个中间容器,它是一个轻量级组件。基本规则如下: l 把Swing组件放入一个与顶层... -
Java 常用的容器有哪些?
2020-03-22 21:12:57常用的容器有哪些?解答。。。