资源描述:
《第10章 图形用户界面设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、图形用户界面设计第十章回顾掌握多线程的概念掌握如何创建线程了解死锁的概念了解线程同步了解使用wait()和notify()在线程之间进行通信2目标GUI相关概念布局管理器事件处理常用Swing组件310.1图形用户界面设计概述10.1.1GUI包和简单GUI程序1.java.awt包称为抽象窗口工具集AWT(AbstractWindowToolkit),是使用Java进行GUI设计的基础。2.javax.swing包Swing组件存放在javax.swing包中。几乎所有AWT组件对应有新功能更强的Swing组
2、件。另外还加入了一些全新的组件。Swing组件在名称上前面多了一个字母“J”。410.1.1GUI包和简单GUI程序3.一个简单的GUI程序设置GUI应用程序的流程:(1)引用需要的包和类。(2)设置一个顶层的容器。(3)根据需要为容器设置布局管理器或使用默认布局管理器。(4)将组件添加到容器内,位置自行设计。(5)为响应事件的组件编写事件处理代码。510.1.2容器、组件、布局和观感1.容器(Container)和组件(Component)组件是可以用图形化的方式显示在屏幕上并能够与用户进行交互的对象。如按钮
3、或标签;容器是一种特殊的组件,一种能够容纳其他组件或容器的组件。2.布局管理器(LayoutManager)为了使图形用户界面具有良好的平台无关性,提供了专门用来管理组件在容器中的布局的工具。3.观感(LookandFeel)决定swing应用程序的外观。610.2布局管理器Java中的布局类型包括以下几种:FlowLayout(流式布局)BorderLayout(边界布局)GridLayout(网格布局)CardLayout(卡片布局)GridBagLayout(网格袋布局)setLayout(布局管理器对象
4、);add(参数);完成布局的设置710.2.1FlowLayout布局管理器FlowLayout的构造函数有:FlowLayout():生成一个默认的流式布局FlowLayout(intalignment):可以设定每一行组件的对齐方式FlowLayout(intalignment,inthorz,intvert):可以设定组件间的水平和垂直距离Applet和面板的缺省布局组件从左上角开始按从左到右、从上到下的方式排列FlowLayoutmylayout=newFlowLayout();FlowLayoute
5、xLayout=newFlowLayout(FlowLayout.RIGHT);setLayout(exlayout);//为容器设置新布局810.2.2BorderLayout布局管理器下面是BorderLayout所定义的构造函数:-BorderLayout():生成默认的边界布局-BorderLayout(inthorz,intvert):可以设定组件间的水平和垂直距离窗口、框架和对话框等的缺省布局组件被置于容器的北、南、东、西或中间位置...setLayout(newBorderLayout());Bu
6、ttonbtnEast=newButton("东");ButtonbtnWest=newButton("西");ButtonbtnNorth=newButton("北");ButtonbtnSouth=newButton("南");ButtonbtnCenter=newButton("中");add(btnEast,BorderLayout.EAST);add(btnWest,BorderLayout.WEST);add(btnNorth,BorderLayout.NORTH);add(btnSouth,Bor
7、derLayout.SOUTH);add(btnCenter,BorderLayout.CENTER);910.2.3GridLayout布局管理器GridLayout的构造函数如下所示:-GridLayout():生成一个单列的网格布局-GridLayout(introw,intcol):生成一个设定行数和列数的网格布局-GridLayout(introw,intcol,inthorz,intvert):可以设置组件之间的水平和垂直间隔用于将容器区域划分为一个矩形网格,组件按行和列排列...Buttonbtn
8、[];//声明按钮数组Stringstr[]={"1","2","3","4","5","6","7","8","9"};setLayout(newGridLayout(3,3));btn=newButton[str.length];//创建按钮数组for(inti=0;i