java的gui入门宝典.ppt
《java的gui入门宝典.ppt》由会员分享,可在线阅读,更多相关《java的gui入门宝典.ppt(51页珍藏版)》请在三一办公上搜索。
1、湘恒教育JAVA基础培训,2023年7月,Java的GUI编程,目标,了解GUI编程和AWT包及其组件理解Swing和AWT的区别理解Java常用布局管理器运用简单swing组件编写Java图形化应用程序,JAVA基础培训Java的GUI编程,本章理解词汇,JAVA基础培训Java的GUI编程,脑图,JAVA基础培训Java的GUI编程,GUI编程,AWT与Swing,如何创建图形界面,布局管理器,什么是GUI编程,JAVA基础培训Java的GUI编程,graphical user interfaces-图形用户界面为用户提供界面友好的所见所得的桌面操作环境。,JComboBox,JCheck
2、Box,JButton,JRadioButton,JLabel,JTexArea,JTexField,java.awt包,java.awt包是Java内置的包,属于Java基本类库(JFC)的一部分,其中包括以下内容:便于用户输入的一组丰富的界面组件;将组件放置在适当位置的几中布局管理器;事件处理模型;图形和图像工具等等。要使用到该包中的类,则必须显式地声明如下语句:import java.awt.*;,JAVA基础培训Java的GUI编程,java.awt包中控件类的体系结构,JAVA基础培训Java的GUI编程,Swing简介和javax.swing包,Swing是在AWT基础上发展而来的
3、轻量级组件,与AWT相比不但改进了用户界面,而且所需的系统资源更少;Swing是纯Java组件,使所有的应用程序在不同的平台上运行时具有本机外观和相同的行为。javax.swing包包含了一系列Swing控件,如果要使用该包中的类,则必须显式地声明如下语句:import javax.swing.*;,JAVA基础培训Java的GUI编程,javax.swing包中控件类的体系结构,JAVA基础培训Java的GUI编程,组件类与容器类,组件(Component):基本图形元素,如按钮,文本框,文本域,多选按钮,单选按钮等容器(Container):可以容纳组件的区域,在容器上可以添加别的组件。如
4、:Frame,Window等。注意:容器中可以容纳组件,也可以容纳比它“容量级别小”的容器。,JAVA基础培训Java的GUI编程,AWT容器,JAVA基础培训Java的GUI编程,Window的子类Frame:最常用的窗体Dialog:对话框,有两种类型的容器:Window和Panel,Window的与Panel的区别:Window是能够独立存放的容器;Panel不能单独存在,必须放入 Window或其子类中,Swing GUI框架,JAVA基础培训Java的GUI编程,你好,世界,菜单栏,顶级容器,GUI组件,GUI组件,内容窗格,顶级容器,JFrame:用于框架窗口的类,此窗口带有边框、
5、标题、用于关闭和最小化窗口的图标等。带 GUI 的应用程序通常至少使用一个框架窗口。JDialog:用于对话框的类。JApplet:用于使用 Swing 组件的 Java Applet 的类。,JAVA基础培训Java的GUI编程,中间容器,JPanel:最灵活、最常用的中间容器。JScrollPane:与 JPanel 类似,但还可在大的组件或可扩展组件周围提供滚动条。JTabbedPane:包含多个组件,但一次只显示一个组件。用户可在组件之间方便地切换。JToolBar:按行或列排列一组组件(通常是按钮)。,JAVA基础培训Java的GUI编程,JFrame组件用于在Swing程序中创建窗
6、体;以下是JFrame常见的构造方法:,JAVA基础培训Java的GUI编程,JFrame的常用方法,JAVA基础培训Java的GUI编程,创建窗体示例,JAVA基础培训Java的GUI编程,import javax.swing.*;public class SwingDemo extends JFrame/*构造方法*/public SwingDemo()this.setTitle(“我的第一个GUI程序”);/设置窗体的标题 this.setSize(300,200);/设置窗体的大小 this.setVisible(true);/将窗体显示 this.setDefaultCloseOpe
7、ration(JFrame.EXIT_ON_CLOSE);/*main方法,程序入口*/public static void main(String args)/创建窗体的实例,匿名对象 new SwingDemo();,JPanel容器,JPanel是最简单的容器类。应用程序可以将其他组件放在面板提供的空间内。JPanel只能存在于其他的容器(Window或其子类)中,一般被放入Frame中JFrame可以被划分为若干个JPanel,然后在JPanel上进一步进行组件的布局;面板的默认布局管理器是FlowLayout布局管理器;不能为JPanel设置标题。,JAVA基础培训Java的GUI编
8、程,的常用方法,JAVA基础培训Java的GUI编程,布局管理器,布局管理器用来:决定组件在容器上如何摆放;决定组件的大小;Frame的默认布局管理器是BorderLayout;JAVA中常用的布局:FlowLayout(流式布局)BorderLayout(边框布局)GridLayout(网格布局)GridBagLayout(网格包布局)CardLayout(卡片布局),JAVA基础培训Java的GUI编程,为容器设置布局,布局管理器(LayoutManager)指的是FlowLayout,BorderLayout等类的对象;调用容器对象的setLayout(LayoutManager lm)
9、方法,即可为容器设置不同的布局;利用多种复杂布局的组合,总可以达到你想要的效果。,JAVA基础培训Java的GUI编程,FlowLayout,JAVA基础培训Java的GUI编程,容器,流布局是面板的默认布局管理器,左上角,右下角,依次排序的组件,垂直或水平间距,BorderLayout,JAVA基础培训Java的GUI编程,上边的组件,左边的组件,右边的组件,下边的组件,容器,North,South,East,West,CENTER,GridLayout,JAVA基础培训Java的GUI编程,行,列,组件大小相同,重新调整组件大小以适合各自的单元,指定网格中的行数和列数,创建网格布局,Car
10、dLayout,可存储几个不同的布局。每个布局就像是一个卡片组中的一张卡片。在一个给定的时间总会有一张卡片在顶层。卡片通常为一个 Panel 对象。每当需要许多面板切换,而每个面板需要显示为不同布局时,可以使用卡片布局。,JAVA基础培训Java的GUI编程,GridBagLayout,通过使用以下语法容器可获得 GridBagLayout:GridBagLayout gb=new GridBagLayout();ContainerName.setLayout(gb);要使用此布局,必须提供各组件的大小和布局等信息。GridBagConstraints 类中包含 GridBagLayout 类
11、用来定位及调整组件大小所需的全部信息。,JAVA基础培训Java的GUI编程,组件大小不必相同组件按行和列排列放置顺序不一定为从左至右和由上至下,GridBagConstraints 类,成员变量列表:gridx,gridy:指定组件放置于哪个单元中gridwidth,gridheight:指定组件将占用多少行和多少列weightx,weighty:指定在一个 GridBagLayout 中应如何分配空间,这些变量的缺省值为 0ipadx,ipady:指定组件的高度和宽度,JAVA基础培训Java的GUI编程,GridBagConstraints,成员变量列表:fill:指定在单元大于组件的情
12、况下,组件如何填充此单元,共有4可选值。缺省值为:GridBagConstraints.NONEanchor:指定将组件放置在单元中的位置,共有9个可选值。缺省值为:GridBagConstraints.CENTER,JAVA基础培训Java的GUI编程,Swing 组件,Swing 组件独立于本地窗口系统。Swing组件除了 AbstractButton 类之外都以 J 开头。Swing 组件是基于 AWT 构建。包含 AWT 可视化组件的替代组件,也包含复杂组件-树和表,JAVA基础培训Java的GUI编程,J,JLabel,JAVA基础培训Java的GUI编程,它既可以显示文本也可以显示
13、图像构造函数如下:JLabel(Icon icon):icon表示使用的图标JLabel(String text,Icon icon,int align):text表示使用的字符串;icon表示使用的图标;align表示水平对齐方式,其值可以为:LEFT、RIGHT、CENTER。,ImageIcon icon=new ImageIcon(Calv.gif);JLabel calv_label=new JLabel(这是 Calvin,icon,SwingConstants.LEFT);,文本组件,JtextComponent 为所有 Swing 文本组件的根类,JAVA基础培训Java的GU
14、I编程,JTextField,JTextField 组件允许输入或编辑单行文本此类的构造函数包括:JTextField()JTextField(Document doc,String text,int columns)JTextField(int columns)JTextField(String text)JTextField(String text,int column,JAVA基础培训Java的GUI编程,Container con=getContentPane();con.setLayout(new FlowLayout();JLabel jl=new JLabel(“文本域”);co
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java gui 入门 宝典
链接地址:https://www.31ppt.com/p-5436123.html