欢迎来到天天文库
浏览记录
ID:43092371
大小:392.00 KB
页数:57页
时间:2019-09-29
《java教程 4 图形设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第四章图形编程DrawingShap.java4.1AWT与Swing简介一.AWT工具包java的抽象窗口工具包(AWT:AbstractwindowInterface)包含在java.awt包中,它提供了许多用来设计GUI的组件类和容器类基本AWT库处理用户界面元素的方法是把这些元素的创建和行为委托给每个目标平台上的本地GUI工具箱进行处理AWT的层次关系EventComponentGraphicsMenuComponButtonScrollBarContainerCanvasListCheckBoxLabelTextField
2、TextAreaWindowFrameDialogFontAppletPanel二.JavaSwingSwing:非基于对等体的GUI工具箱Swing具有更丰富并且更方便的用户界面元素集合Swing对底层平台的依赖更少Swing会带来交叉平台上的统一视觉体验Swing类被放在javax.Swing包上Swing组件层次关系ComponemtContainerWindowFrameDialogJFrameJDialogJComponentJPanelJLabelJScrollerJMenuBarJButtonJtext..三.AWT与
3、Swing的关系对于使用过Java早期版本的人来说,大部分AWT组件都有其Swing等价物后者的名字一般是在前面添加一个字母“J”,如:JButton,JFrame,JPanel等4.2组件和容器一.组件Java把由Component类的子类或间接子类创建的对象称为一个组件例:Buttonbutton1=newButton();例:TextFieldtextfield=newTextField();例:Labellabel=newLabel();二.容器Java把由container类的子类或间接子类创建的对象称为一个容器例:Fra
4、mefra=newFrame(“这是一个窗口”);Applet是Panel的子类,是Container的间接子类Applet本身也是一个容器三.添加组件Component类提供了一个方法:add();例:fra.add(button);例:fra.add(TextField);容器本身也可以看作是一个组件,因此可以把一个容器添加到另一个容器里,实现容器嵌套例:add(fra);四。布局管理器Java采用非常优秀的概念来进行布局一个容器内的所有组件都由一个布局管理器来进行管理Java支持以下四种布局管理器FlowLayoutBorde
5、rLayoutCardLayoutGridBagLayout在Java中,顶层窗口(没有包含在另一个窗口内的窗口)称为框架1.框架AWT库中有一个基于对等体的Frame类对应着顶层该类的Swing版本为JFrame,JFrame是Frame子类例:框架是容器的例子SimpleFrameTest.java五.常用容器importjavax.swing.*;publicclassSimpleFrameTest{publicstaticvoidmain(String[]args){SimpleFramemyframe=newSimpleF
6、rame();myframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);myframe.show();}}classSimpleFrameextendsJFrame{publicSimpleFrame(){setSize(WIDTH,HEIGHT);}publicstaticfinalintWIDTH=300;publicstaticfinalintHEIGHT=200;}2.定义相对框架通过调用toolkit来得到系统相关信息例:CenteredFrameTest.java例:获
7、得屏幕尺寸Toolkitkit=Toolkit.getDefaultToolkit();DimensionscreenSize=kit.getScreenSize();intscreenHeight=screenSize.height;intscreenWidth=screenSize.width;classCenteredFrameextendsJFrame{publicCenteredFrame(){//getscreendimensionsToolkitkit=Toolkit.getDefaultToolkit();Dimen
8、sionscreenSize=kit.getScreenSize();intscreenHeight=screenSize.height;intscreenWidth=screenSize.width;//centerframeins
此文档下载收益归作者所有