欢迎来到天天文库
浏览记录
ID:37707188
大小:140.50 KB
页数:48页
时间:2019-05-29
《3ATW Swing 事件处理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、AWT(AbstractWindowingToolkit)是用来创建Java图形用户界面的基本工具.JavaSwing是JFC(JavaFoundationClasses)的一部分,它可以弥补AWT的一些不足.Component(组件):按钮、标签、菜单等组件的抽象基本类。Container(容器):扩展组件的抽象基本类,例如Panel、Applet、Window、Dialog 和Frame等是由Container演变的类,容器中可以包括多个组件。LayoutManager(布局管理器):定义容器中组件的摆放位置和大小接口。Java中定 义了几种
2、默认的布局管理器。Graphics(图形):组件内与图形处理相关的类,每个组件都包含一个图形类的对象。1 组件 组件是Java图形用户界面程序设计的最基本组成部分,它是一个以图形方式显示的,并且可以与用户进行交互的界面组成元素,例如按钮、标签、单选框、多选框等。单独的一个组件不能显示出来,必须将组件添加到容器当中才能显示。 component方法? ComponentgetComponentAt(intx,inty):返回包含该位置(x,y)的组件或子组件。?FontgetFont():获取组件的字体。?ColorgetForeground():获取组件的前景色。?Strin
3、ggetName():获取组件的名称。?DimensiongetSize():以Dimension对象的形式返回组件的大小。?voidpaint(Graphicsg):绘制该组件。?voidrepaint():重绘组件。?voidupdate(Graphicsg):更新该组件。?voidsetVisible(booleanb):根据参数的值显示或隐藏此组件。?voidsetSize(intwidth,intheight):调整组件的大小,使其宽度和高度分别为width和height。?voidsetName(Stringname):将组件的名称设置为指定的字符串。?voidsetFo
4、reground(Colorc):设置组件的前景色。AWT的组件库CanvasComponent绘制图形的画布 画布(Canvas)是处于屏幕上的一个空白矩形区域,在该区域可以绘图,也可以获得用户激发的事件。画布组件可以监听鼠标事件和键盘事件。 publicvoidpaint(Graphicsg) 由于画布的paint()方法默认操作是清除画布,所以重写此方法的应用程序不需要调用super.paint(g)。 publicvoidupdate(Graphicsg) 调用update()的目的是为了调用repaint()方法。执行过程是通过背景色填充画布的背景,然后再调用p
5、aint()方法重新绘制图像。update()方法不同于paint方法,必须在重写的update()方法中第一行调用super.update(g),或者重新实现背景色填充和重绘两个功能。//文件:程序11.10CanvasDemo.javaCanvasDemo演示//导入需要使用的包和类importjava.awt.*;importjava.awt.event.WindowAdapter;importjava.awt.event.WindowEvent;publicclassCanvasDemoextendsPanel{publicstaticvoidmain(Stringargs[
6、]){newCanvasDemo();//创建CanvasDemo实例}publicCanvasDemo(){f=newFrame();//初始化窗口对象fmc=newMyCanvas();//初始化画布对象mc.repaint(0,0,100,100);//画布重绘add("Center",mc);//添加画布到窗口Center位置f.add(mc);//在窗口f中添加画布对象f.setSize(300,200);//设置窗口的大小f.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEventev
7、t){f.setVisible(false);//设置窗口f不可见f.dispose();//释放窗口及其子组件的屏幕资源System.exit(0);//退出程序}});f.setVisible(true);//显示窗口f}privateMyCanvasmc;privateFramef;classMyCanvasextendsCanvas{//重载paint方法publicvoidpaint(Graphicsg){g.setColor(Color.red
此文档下载收益归作者所有