第5章图形界面设计(一)(9,10)剖析

上传人:今*** 文档编号:107868362 上传时间:2019-10-21 格式:PPT 页数:68 大小:724KB
返回 下载 相关 举报
第5章图形界面设计(一)(9,10)剖析_第1页
第1页 / 共68页
第5章图形界面设计(一)(9,10)剖析_第2页
第2页 / 共68页
第5章图形界面设计(一)(9,10)剖析_第3页
第3页 / 共68页
第5章图形界面设计(一)(9,10)剖析_第4页
第4页 / 共68页
第5章图形界面设计(一)(9,10)剖析_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《第5章图形界面设计(一)(9,10)剖析》由会员分享,可在线阅读,更多相关《第5章图形界面设计(一)(9,10)剖析(68页珍藏版)》请在金锄头文库上搜索。

1、第5章 图形界面设计(一),Java语言程序设计,本章学习要点:,主要内容 图形界面设计基础 框架窗口 面板 布局设计 标签、按钮和按钮事件 文本框和文本区,重点:框架窗口,按钮事件处理方法,面板和滚动面板,布局设计,文本框事件的处理方法,利用文本框和文本区作数据输入输出的方法。 难点:按钮事件和文本框事件的处理方法。,GUI(Graphics User Interface) 图形用户界面(通过按钮、滚动条、文本字段、菜单、复选框、窗口和其他图形方式进行人机信息交互)。,5.1 图形界面设计基础,1.java.awt包 Java语言在java.awt包中提供了大量地进行GUI设计所使用的类和接

2、口,包括绘制图形、设置字体和颜色、控制组件、处理事件等内容,awt是Java语言进行GUI程序设计的基础。 2.javax.swing包 swing包是Java基础类库(Java Foundation Classes,JFC)的一部分。swing提供了从按钮到可分拆面板和表格的所有组件。,5.1 图形界面设计基础 5.1.1 AWT和Swing,5.1 图形界面设计基础 5.1.1 AWT和Swing,2. javax.swing包 swing组件是Java语言提供的第二代GUI设计工具包,它以AWT为基础,在AWT内容的基础上新增或改进了一些GUI组件。 awt组件和对应的swing组件的记

3、忆与区别: 1.与awt组件相比,swing组件的名前多一个 “J” 字母。 2.界面组件的外观不同:AWT在不同平台上运行相同的程序,界面的外观和风格可能会有一些差异。然而,一个基于Swing的应用程序可能在任何平台上都会有相同的外观和风格。,5.1 图形界面设计基础 5.1.1 AWT和Swing,Java中常用的Swing组件如下表所示:,1.容器和组件 组件(Component)是可以用图形化的方式显示在屏幕上并能够与用户进行交互的对象。(如按钮,文本框等) 容器(Container)是一种特殊的组件,一种能够容纳其他组件或容器的组件。 2.布局管理器 为了使图形用户界面具有良好的平台

4、无关性,提供了专门用来管理组件在容器中的布局的工具。,通常将组件放在一定的容器内使用.,每一个使用Swing GUI的应用程序都必须包含至少一个顶层Swing容器组件,这样的容器有四种:JFrame、 JApplet、 JDialog和JWindow,Java平台提供的常用布局管理器有: FlowLayout 、BorderLayout 、GridLayout 、CandLayout 、BoxLayout和GridBagLayout,5.1 图形界面设计基础 5.1.2 容器、组件、布局管理器,一个Java的图形用户界面的最基本元素是组件。,为了统一管理组件和容器,为所有组件类定义超类Comp

5、onent类,把组件的共有操作都定义在Component类中。同样为所有容器类定义超类Container类,把容器的共有操作都定义在Container类中。例如Container类中定义了add()方法,大多数容器都可以用add()方法向容器添加组件。 为能层次地构造复杂的图形界面,容器被当作特殊的组件,可以把容器放入另一个容器中。,5.1 图形界面设计基础 5.1.2 容器、组件、布局管理器,组件和容器从功能上可以粗分如下: 顶层容器: JFrame,JApplet,JDialog,JWindow。 中间容器: JPanel,JScrollPane,JSplitPane,JToolBar等

6、基本控件: JButton,JComboBox,JList,JMenu,JTextField 可编辑的组件: JColorChooser,JFileChooser,JTextArea,5.1 图形界面设计基础 5.1.2 容器、组件、布局管理器,5.1 图形界面设计基础 5.1.2 容器、组件、布局管理器,5.2 顶层容器 JFrame 框架,窗口是GUI编程的基础,小应用程序或图形界面的应用程序的可视组件都放在窗口中,在GUI中,窗口是用户屏幕的一部分,起着在屏幕中一个小屏幕的作用。有以下三种窗口: (1)Applet窗口,Applet类管理这个窗口,并且自动创建和处理。 (2)框架窗口(J

7、Frame),支持窗口周边的框架、标题栏,以及最小化、最大化和关闭按钮。 (3)一种无边框窗口(JWindow),没有标题栏,没有框架,只是一个空的矩形。,5.2 顶层容器 JFrame 框架,对JavaGUI应用程序,应至少包含一个框架。 1.JFrame类的构造方法如下: JFrame( ) /创建无标题的初始不可见框架。 JFrame(String title) /创建标题为title的初始不可见框架。 2.要显示框架对象代表的框架窗口,可使用方法setVisible( boolean b)。可用语句:,JFrame frame = new JFrame(“Java GUI应用程序“);

8、,frame.setVisible(true);,使得JFrame类对象frame表示的框架窗口显示到屏幕上。,3.setBounds(int x,int y,int width,int height) /设置窗口左上角位置和窗口大小。 4.一般在显示框架前,可设置框架的初始显示大小可使用setSize(int width,int height)方法或pack()方法。例如: frame.setSize(200,150); frame.pack(); 5.setTitle(String title) /设置窗口标题。,单位为:象素点,5.2 顶层容器 JFrame 框架,6.getTitle(

9、 ) /获取窗口标题。 7.setBackground(Color c) /以参数c设置窗口的背景颜色。 8.setResizable(boolean m) /设置当前窗口是否可调整大小(默认值可调整大小) 。,5.2 顶层容器 JFrame 框架,9.在向框架添加组件时,并不直接添加组件到框架,而是添加到内容窗格(content pane),改变其他特性(布局管理器、背景色等)也对内容窗格进行。 getContentPane( ) setContentPane( ),存取内容窗格,用自己的容器替换掉内容窗格(例如用JPanel),,(new JFrame( ).getContentPane(

10、 ).add(new Button(“test button“);,5.2 顶层容器 JFrame 框架,容器都可以添加组件,除了JPanel及其子类(如JAppelet)之外,其他容器不允许把组件直接加入。(在Java新版本中,可以直接添加组件到框架),9.在向框架添加组件 具体来说向JFrame添加组件有两种方式: (A)用getContentPane( )方法获得JFrame的内容面板,再对其加入组件: (B)建立一个JPanel或 JDesktopPane之类的中间容器,把组件添加到容器中,用setContentPane()方法把该容器置为JFrame的内容面板 JPanel cont

11、entPane=new JPanel( );,mw.getContentPane( ).add(childComponent);,mw.setContentPane(contentPane); 或者: mw.getContentPane.add(contentPane);,5.2 顶层容器 JFrame 框架,10.应在程序中书写下列代码: 【例5_1】设计一个可关闭的、确定尺寸的、有标题的窗口,并创建一个按钮添加进去。,作用:选择框架的关闭按钮后,框架窗口将自动关闭,同时应用程序也将退出.,mw.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);,

12、5.2 顶层容器 JFrame 框架,5.2 顶层容器 JFrame 框架,import javax.swing.*; public class Example5_1 public static void main(String args ) JFrame mw = new JFrame(“我的第一个窗口“); mw.setSize(250, 200); JButton button = new JButton(“我是一个按钮“); mw.getContentPane( ).add(button); mw.setVisible(true); mw.setDefaultCloseOperatio

13、n(JFrame.EXIT_ON_CLOSE); ,【例5.2】定义JFrame派生的子类MyWindowDemo创建JFrame窗口。类MyWindowDemo的构造方法有五个参数:窗口的标题名,加入窗口的组件,组件的背景颜色,以及窗口的大小。在主方法中,利用类MyWindowDemo创建两个类似的窗口。,5.2 顶层容器 JFrame 框架,若希望程序的界面五彩斑斓,可应用java.awt包中的类Color。 Color类提供了13种颜色常量,多种创建颜色对象的构造方法,以及多种获取和设置颜色的方法。Color类的13种public final static的颜色常量大小写均可。 Colo

14、r类的颜色常量和实例对象可提供给需要设置颜色的对象方法,来改变当前的颜色。,补充:Color类,JPanel是一种需要添加到其他容器使用的容器组件,可实现界面的层次结构,在它上面放入一些组件,也可以在上面绘画,将放有组件和有画的JPanel再放入另一个容器里。 1. 构造方法有: public JPanel( ) /创建具有缺省FlowLayout布局的JPanel对象。 public JPanel(LayoutManager layout) /创建具有指定布局管理器的JPanel对象。,注意:JPanel只是一个中间容器,并不是顶层容器,因此,要在屏幕上显示JPanel,必须将它添加到一个顶

15、层容器(如JFrame)中.,5.4 中间容器 5.4.1 JPanel 面板,2. JPanel对象添加组件的方法: (1)add(组件),添加组件。 (2)add(字符串, 组件),当面板采用CardLayout布局时,字符串是引用添加组件的代号。,5.4 中间容器 5.4.1 JPanel 面板,【例5.4】小应用程序有两个JPanel子类对象和一个按钮。每个JPanel子类对象又有两个按钮和一个标签。,5.4 中间容器 5.4.1 JPanel 面板,JScrollPane是带有滚动条的面板。JScrollPane是Container 类的子类,也是一种容器,但是只能添加一个组件。 J

16、ScrollPane的一般用法是先将一些组件添加到一个JPanel中,然后再把这个JPanel添加到JScrollPane中。这样,从界面上看,在滚动面板上,好像也有多个组件。在Swing中,像JTaxtArea、JList、JTable等组件都没有自带滚动条,都需要将它们放置于滚动面板,利用滚动面板的滚动条浏览组件中的内容。,5.4 中间容器 5.4.2 JScrollPanel 面板,1. 构造方法: JScrollPane() /创建一个空的JScrollPane,需要时水平和垂直滚动条都可显示。 JScrollPane(Component com) /创建一个显示指定组件内容的 JScrollPane,只要组件的内容超过视图大小就会显示水平和垂直滚动条。,5.4 中间容器 5.4.2 JScrollPanel 面板,在界面设计中,一个容器要放置许多组件。为组件安排位置,这就是布局设计。Java.awt中定义了多种布局类,每种布局类对应一种布局的策略。常用的有以下

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号