预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共76页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

学习导读 首先,我们学习一些基本的图形编程知识,包括窗口的显示及外观设置、在窗口中显示文字和图像等; 接下来,介绍Java的事件处理机制,例如如何在程序中接收并处理如键盘按键和鼠标点击等“事件”; 最后,系统地介绍图形用户界面中常用组件的用法,如布局管理器、文本框、复选框、菜单、对话框等。教学重点与难点:7.1图形用户界面概述7.2简单图形用户界面【例7.1】显示一个空框架(例题7_1(1)) importjavax.swing.*; publicclassFirstFrame { publicstaticvoidmain(String[]args) { SimpleFrameframe=newSimpleFrame(); //设置用户关闭框架时的响应动作 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //参见http://java.sun.com/j2se/1.4.2/docs/api/index.html //显示该框架 frame.show(); } } classSimpleFrameextendsJFrame { publicSimpleFrame() { //设置框架大小 setSize(WIDTH,HEIGHT); } publicstaticfinalintWIDTH=300; publicstaticfinalintHEIGHT=200; }7.2.2框架外观Component类是所有GUI对象的祖先,Window类是Frame类的父类,JFrame类直接从Frame继承而来。对于框架外观的操作比较重要的方法如下: setIconImage——窗口最小化(在Java中称为图标化)时,把一个Image对象用作图标。 setTitle——设置窗口中标题栏的文字。 setResizable——设置用户是否可以改变框架大小。 dispose方法——关闭窗口,并回收该窗口的所有资源。 setLocation——设置组件的位置。 setBounds——重新设置组件的大小和位置。 【例7.2】框架外观的设置(例题7_1(2)) 设置具有以下特征的框架: 它的高度和宽度为整个屏幕的1/3; 自定义窗口的标题和图标; 窗口的大小不可变。 程序代码见FrameSizeSet.java。运行结果如下: 7.2.3在框架中显示信息 为了在面板中进行绘制,需要重载JComponent类的paintComponent方法。 classMyPanelextendsJpanel { publicvoidpaintComponent(Graphicsg) { super.paintComponent(g); ...//相关的绘制代码 } } paintComponent方法是自动执行的,当窗口需要被重新绘制时,如用户缩放窗口,或还原已最小化的窗口时,系统就会自动调用该方法。 在框架中显示文本信息的方法: g.drawString(text,x,y) 【例7.3】在框架中显示信息(例题7_1(3)) 程序代码见HelloWorld.java。运行结果如下: 7.2.4文本和字体(例题7_1(3))【例7.5】字体设置(例题7_1(3)) 采用“宋体”显示字符串“你好,Java!”,字体风格为加粗、倾斜,大小为20点。 程序代码见FontSet.java。运行结果如下: 7.2.5绘制简单图形【例7.6】简单图形的绘制(扩充例题7_1(3)) 直线,弧,多边形的绘制。 程序代码见SimpleDraw.java。运行结果如下: Java提供了矩形、圆角矩形、椭圆等基本形状的绘制方法: 矩形: voiddrawRect(intx,inty,intwidth,intheight) 圆角矩形: voiddrawRoundRect(intx,inty,intwidth,intheight, intarcWidth,intarcHeight) 椭圆: voiddrawOval(intx,inty,intwidth,intheight) Java还提供了方便的填充封闭图形的方法,只需要将前面介绍的方法中的draw改为fill即可。如: voidfillRect(intx,inty,intwidth,intheight) voidfillRoundRect(intx,inty,intwidth,intheight, intarcWidth,intarcHeight) voidfillOval(intx,inty,intwidth,intheight) 7.2.6颜色JFr