GUI入门

JDBC 连接数据库的过程

注册驱动(class ,forName)

创建连接

创建连接对象

执行SQL语句

statement对象的类型与作用

1、(layout :版面,布局)

2、(flow :流动,流式)

3、(grid :边界,边境)

4、(title :头衔 ,标题)

5、(size :尺寸,大小)

6、(visible :可见的,显著的)

7、(east:东 ,东方)

8、(west:西,西方)

9、(south:南 ,南方)

10、(north:北 ,北方)

11、(center :中央,中心)

了解AWT

AWT简介

实现GUI编程是由一系列图形化组件来完成的(即一系列定义好的类)

这些组件也被称为控件;

在 java 的早期版本中,GUI组件由名为AWT(Abstract Window Toolkit ,抽象窗口工具包的标准库来提供;)的缩写,它是java一个抽象窗口工具包,提供了很多图形界面组件类。例如Button、TextField等。

除了GUI组件外,AWT还包括其他功能来支持图像绘画、处理剪切/复制类型的数据传送,

以及其他相关操作。
jdk1.2中新加了一个swing包,也是用来做图形界面的,功能和awt一样,不过更加强大

以及java.awt包

java.awt是一个软件包,包含用于创建用户界面和绘制图形图像的所有分类。

java.awt包是 java 内置的包,属于 java 基础类库(JFC)的一部分,

其中包括以下内容:

便于用户输入的一组丰富的界面组件;

将组件放置在适当位置的几种布局管理器;

事件处理模型;

图形和图像工具等。

要使用到该包中的类,则必须显示地声明如下语句:

import  java.awt.*;

//

流式布局(FlowLayout)

边界布局(BorderLayout)

网格布局(GridLayout)

使用面板(JPanel) 实现复杂布局

GUI的概念

到目前为止,我们在 Java 中编写的都是基于控制台的程序;

GUI(Graphical User Interface) 即图形用户界面,它能够使应用程序看上去更加友好

AWT 组件的类体系结构:

//

//

//

//

//

常用的基本Swing组件

在Swing编程中,有一些经常要使用到的组件,其中包括:

jFrame (窗体,框架)

jButton(按钮)

jLabel (标签)

jTextField  (文本框)

//

//

//

//

//

javax.swing.jButton

在Swing 程序中,按钮可能是使用量最大的组件之一,

JButton 则是用来创建按钮的;

JButton类的结构方法有5种重载方式,以下是常用的几种:

构造方法:

1、 (JButton :创建一个空按钮)

2、(JButton(String text) :创建一个带文本的按钮)

3、(JButton(Icon icon) :创建一个带图标的按钮)

4、 (JButton(String text, Icon icon) :创建一个带文本和图标的按钮)

//

//

//

//

//

//

//

//

javax.swing.JPanel

jPanel 提供面板组件,它是轻量级的容器组件;

面板中可以添加其他组件,也可以设置布局,我们一般使用面板来实现布局嵌套;

jPanel 类的构造方法有4种重载方式,以下是常用的几种:

jpanel()  ---> 创建一个空面板

jpanel(LayoutManager layout)  ---->创建带有指定布局的面板

JPanel的常用方法

//GUI 入门总结

Java 第29章GUI的更多相关文章

  1. 第十一章 GUI 上

     第11章 GUI程序设计 11.1 JFC简介 JFC(Java Foundation Class) 作为CUI(Graphic User Interface)设计的基础.JFC包含AWT(Abst ...

  2. EFFECTIVE JAVA 第十一章 系列化

    EFFECTIVE  JAVA  第十一章  系列化(将一个对象编码成一个字节流) 74.谨慎地实现Serializable接口 *实现Serializable接口付出的代价就是大大降低了“改变这个类 ...

  3. JAVA基础第二章-java三大特性:封装、继承、多态

    业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...

  4. 【RL-TCPnet网络教程】第29章 NTP网络时间协议基础知识

    第29章      NTP网络时间协议基础知识 本章节为大家讲解NTP (Network Time Protocol,网络时间协议)和SNTP(简单网络时间协议,Simple Network Time ...

  5. java之 22天 GUI 图形界面编程(一)

    转自:http://takeme.iteye.com/blog/1876850 GUI(图形用户界面) import java.awt.Button; import java.awt.FlowLayo ...

  6. “全栈2019”Java多线程第九章:判断线程是否存活isAlive()详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  7. “全栈2019”Java多线程第二章:创建多线程之继承Thread类

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  8. “全栈2019”Java多线程第一章:认识多线程

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  9. “全栈2019”Java异常第九章:throws关键字详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

随机推荐

  1. Samba安装配置

    Samba简介 Samba官网:http://www.samba.orgSMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不 ...

  2. nodejs require

    The rules of where require finds the files can be a little complex, but a simple rule of thumb is th ...

  3. 源码编译Nodejs 4.6 on CentOS6

    1.本来是要按照个newman程序,无奈newman必须要node版本>=4,所以不得不安装node4.6 下载地址:https://nodejs.org/dist/v4.6.0/node-v4 ...

  4. 图像上传OSS的BUG

    今天遇到了一个流上传BUG. 图像经过压缩后传到阿里OSS上后无法显示,下载后发现图像大小为0KB. 调试发现上传的时候发现处理后的流大小正确. 最后发现是流经过图像处理后没有复位. 使用res.Se ...

  5. transfromjs动画效果

    记得以前facebook做过一款HTML5游戏.开场动画是一块软体类似豆腐的东西一起摇摆.类似的效果如下面的gif所示: facebook当时使用的是createjs下的子项目easeljs和twee ...

  6. table的遍历

    1.for k,v in pairs (tbtest) do 这样的遍历顺序并不是tbtest中table的排列顺序,而是根据tbtest中key的hash值排列的顺序来遍历的 2.for k,v i ...

  7. 【POJ3691】DNA repair(AC自动机,DP)

    题意: 生物课上我们学到,DNA序列中只有A, C, T和G四种片段. 经科学发现,DNA序列中,包含某些片段会产生不好的基因,如片段"ATC"是不好片段,则"AGATC ...

  8. (转)提高mysql千万级大数据SQL查询优化30条经验(Mysql索引优化注意)

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...

  9. (转) PowerDesigner逆向工程导入MYSQL数据库总结

    PowerDesigner逆向工程导入MySQL数据库总结 由于日常数据建模经常使用PowerDesigner,使用逆向工程能更加快速的生成模型提高效率,所以总结使用如下: 1.      安装MYS ...

  10. thinkphp ajax分页

    临时更改后的page类(很多地方没修改...因为笔者PHP没学好..)如下: 复制代码 <?php namespace Fenye\libs; /** file: page.class.php ...