JAVA与图形界面开发(Applet应用程序、AWT库、Swing)
- Applet
1)简单说,Applet就是嵌入到网页中的小程序,Java代码。
2)编写Applet程序,要继承JApplet类,并根据自己需要覆写相关方法(init、start、stop、destroy<可选>)即可。
3)Applet生命周期:
初始化阶段:init方法(自动被调用,完成图形组件的初始化和版面分配)
执行阶段:start方法(当Applet当前窗口被激活时,执行相应代码)
终止阶段:stop方法(关闭Applet程序时)
释放资源:destroy方法
4)向Applet里添加控件——init
5)Applet的事件处理模型———首先注册需要捕捉的事件;然后编写相应的处理逻辑。
button.addActionListener(this);//注册,this表示Applet程序本身
public void actionPerformed(ActionEvent e){ if(e.getActionCommand().equals("name")){ label.setText("hello "+text.getText()); } }//处理逻辑
6)将Applet程序插入网页
在网页中需要的地方插入代码:<applet code="HelloWorld.class" width=200 height=100></applet>//告诉浏览器该applet程序图形界面的大小
然后将HelloWorld.class和HelloWorld.html文件放在同一个目录下,点击html文件即可运行。
或直接使用JDK提供的Appletviewer命令运行Applet程序:在dos环境中的相关路径下键入Appletviewer HelloWorld.html即可。
- AWT(Abstract Window Toolkit,抽象窗口工具包)
1)AWT提供了所有OS共有的图形控件,如按钮、菜单、文本框等。
2)但是AWT是建立在OS之上,所以大部分组件都含有native code代码。虽然native code代码保证了控件与OS的兼容性,但也使AWT中的控件失去了灵活性。利用AWT开发图形界面,我们无法改变组件外观,除非编写C语言的native code代码,这对跨平台是个致命打击,同时AWT效率也不高。
3)所以,了解一下就可以了,知道她有三类控件:组件(label、button等)、容器(window、panel、applet)、布局管理器(FlowLayout、GridLayout等)。
4)也要进行事件的监听、事件的处理。
- Swing———AWT改进版,使图形界面开发更容易
1)Swing是个轻量级的图形开发工具,没有native code,也不依赖于操作系统,Java的跨平台在Swing上得到了极大地体现。
2)三类容器:
顶层容器(JFrame、JApplet、JDialog、JWindow):并非轻量级,还需要native code,因为需要他们与OS进行通讯。顶层容器不能直接加入JButton等组件,必须借助其他容器。
中间层容器(JPanel、JScrollPane、JSplitPane、JToolBar等):轻量级容器。
特殊容器(JInternalFrame、JLayeredPane等):轻量级。
3)丰富的组件:AWT有的组件Swing都有,只是在名字前加了J,都是轻量级组件。
4)五大布局管理器:BorderLayout、FlowLayout、GridLayout、CardLayout、GridBagLayout。
5)事件监听和事件处理机制:和AWT一样,采用委托事件模式,即——将事件源不同的事件委托给不同的事件监听类进行监听和处理,同时只需要将感兴趣的事件委托给相应的事件监听类,而不用关心不需要的事件。
6)做个小程序玩玩吧。。。
JAVA与图形界面开发(Applet应用程序、AWT库、Swing)的更多相关文章
- Java GUI图形界面开发工具
Applet 应用程序 一种可以在 Web 浏览器中执行的小程序,扩展了浏览器中的网页功能. 缺: 1.需要下载 Applet 及其相关文件 2.Applet 的功能是受限制的 优: 3.无需 ...
- JAVA 图形界面开发基础详解
与C的win32一样,JAVA也有自己的图形界面开发,将在此篇博客中对基础部分进行讲解. 1.Java提供的图形界面类有哪些? Java提供了两套图形界面 (1)AWT组建(基础) AWT组件是jdk ...
- Java 图形界面开发--图文并茂建立学生管理系统
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/50932501 冷血之心的博客) 图形用户界面(Graphics U ...
- Java Swing 图形界面开发(目录)
Java Swing 图形界面开发(目录) 2017年05月30日 23:50:42 阅读数:5228 本文链接: http://blog.csdn.net/xietansheng/article/d ...
- Java Swing图形界面开发
本文转自xietansheng的CSDN博客内容,这是自己见过的最通俗易懂.最适合快速上手做Java GUI开发的教程了,这里整合一下作为自己以后复习的笔记: 原文地址:https://blog.cs ...
- Java的图形界面依然是跨平台的
Awt:抽象窗口工具箱,它由三部分组成: ①组件:界面元素: ②容器:装载组件的容器(例如窗体): ③布局管理器:负责决定容器中组件的摆放位置. 图形界面的应用分四步: ① 选择一个容器: ⑴wind ...
- 【计项02组01号】Java版图形界面计算器
Java版图形界面计算器1.0版本 项目分析[1.0] 组成部分 代码结构 (1)窗口的创建 在<JDK 核心 API>中我们提到,创建一个窗口需要使用 JFrame 类.在本实验中,我们 ...
- Java自学-图形界面 容器
Swing 的容器 JFrame和JDialog java的图形界面中,容器是用来存放 按钮,输入框等组件的. 窗体型容器有两个,一个是JFrame,一个是JDialog 步骤 1 : JFrame ...
- python 图形界面开发
用python来开发图形界面,确实不是很方便,没有c#,Java,甚至VB来得容易.几个控件拖拽,然后响应事件. 用python写脚本,或者web service来处理一般工作,绰绰有余.但有的时候, ...
随机推荐
- Hibernate逍遥游记-第7章 Hibernate的检索策略和检索方式(<set lazy="false" fetch="join">、left join fetch、FetchMode.JOIN、)
1. <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hi ...
- sql 随笔 2015-07-02
sql 自定义函数 --检查函数是否存在 if exists (select * from dbo.sysobjects where id = object_id(N'dbo.pTitleCase') ...
- sqort函数用法总结
qsort包含在<stdlib.h>头文件中,此函数根据你给的比较条件进行快速排序,通过指针移动实现排序.排序之后的结果仍然放在原数组中.使用qsort函数必须自己写一个比较函数. 函数原 ...
- HS-T912 adb 连接配置
手机丢了,花300大洋买的新手机阿...不讨论好不好用,只说怎么用. 安装驱动 linux 跳过 插上电脑,在__通知__里面打开__USB 连接__,会弹出__USB 设置__对话框. 选择__海信 ...
- WIN7 64位系统搭建WINCE6.0系统遇到的问题
WIN7 64位系统搭建WINCE6.0系统遇到的问题 安装顺序如下: .先装Visual Studio2005: .安装Visual Studio2005 Service Pack 1: .安装Vi ...
- [51NOD1105]第k大的数(二分答案)
题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1105 先排序,二分上下界分别是最小的两个数和最大的两个数的乘积 ...
- java6 新特新
JAVA6新特性介绍 1. 使用JAXB来实现对象与XML之间的映射 JAXB是Java Architecture for XML Binding的缩写,可以将一个Java对象转变成为XML格式, ...
- Go Deeper(2010成都现场赛题)(2-sat)
G - Go Deeper Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Description ...
- CodeForces Round #279 (Div.2)
A: 题意: 有三个项目和n个学生,每个学生都擅长其中一个项目,现在要组成三个人的队伍,其中每个人恰好擅长其中一门,问能组成多少支队伍. 分析: 最多能组成的队伍的个数就是擅长项目里的最少学生. #i ...
- django - get_or_create() 使用提醒
[omron - debug] user_id建表的时候,不能使用unique,因为一个用户,可能有多个product_id,相对应的是,get_or_create()中的查询参数,如果在建表中有un ...