实验五图形用户界面

上传人:枫** 文档编号:508642414 上传时间:2022-11-14 格式:DOC 页数:9 大小:174KB
返回 下载 相关 举报
实验五图形用户界面_第1页
第1页 / 共9页
实验五图形用户界面_第2页
第2页 / 共9页
实验五图形用户界面_第3页
第3页 / 共9页
实验五图形用户界面_第4页
第4页 / 共9页
实验五图形用户界面_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《实验五图形用户界面》由会员分享,可在线阅读,更多相关《实验五图形用户界面(9页珍藏版)》请在金锄头文库上搜索。

1、实验五图形用户界面实验目的1. 了解图形用户界面的概念;2. 了解AWT和Swin g的基本体系结构;3. 掌握几种布局管理器的使用方法;4. 掌握Ja va的事件处理机制;5. 掌握图形用户界面的构建。实验要求1. 掌握在容器中添加组件的方法,掌握使用布局管理器对组件进行 管理的方法。2. 理解 Ja va的事件处理机制,掌握为不同组件编写事件处理程序 的方法。3. 掌握编写独立运行的窗口界面的方法。4. 了解 Ja va S wi ng组件的使用方法。5. 了解对话框的使用方法。6. 熟练使用图形类Graphic s。实验内容(一)建立独立运行的窗口界面并使用匿名类最常使用的包含组件的容器

2、是窗口,在Java中窗口由Fr ame类生成。 编写SY5_1. ja va程序文件,程序功能:创建一个具有关闭功能的空白 窗口。源代码如下:i mpo rt j ava. awt.* ;i mport j ava. awt.e vent. *;publ ic c la ss S Y5_ 1 SY5_1()一Fr ame f= new Fr ame(初始窗 口 ”);f. se tS iz e( 35 0, 200);f. se tV is ib le (t rue );/ /为窗口添加窗口事件适配器f. addWn dowLis ten er( new WindowAdapte r( ) /

3、关闭窗口事件的方法publ ic v oi d wi ndo wCl os in g( Wind owEvent e) Sy st em.e xi t( 0);publ ic s ta ti c voi d mai n( St ri ng arg s) new SY5_ 1(); _编译并运行程序二 ) 创 建图 形用 户 界面图形用户界面(GUI )是为方便用户使用设计的窗口界面,在图形 用 户 界面 中用 户 可以看到什么就操作什么,取代了在字符方式下知道是 什么后才能操作什么的 方式。组件( Co mpon en t ) 是 构成 GUI 的基本要 素,通 过对不同事件的响应来完成和用

4、户 的 交互或组件之间的交互。组 件一般作为一个对象放置在 容器( Cont ai ner ) 内, 容器是 能容纳和排 列组件的对象, 如 Appl et 、 Panel ( 面 板) 、Frame( 窗口 ) 等。通过 容 器 的 add 方 法 把 组 件 加 入 到 容 器 中 。编写 SY5_ 2. ja va 程序文件, 程序功能:在窗 口 中添加组件。源代 码如下:i mport j ava. awt.* ;i mport j ava. awt.e ven t. *;publ ic c la ss S Y5_2 e xt en ds F ra me i mple ment s A

5、ctio nLi st ener Butt on b tn 1, b tn2 ;Text Fi el d f, tf 1,t f 2;Text Ar ea A re a;SY5_ 2( )super( 添加组件的窗 口 ) ;ad dWin do wL is te ner ( ne w Wi nd owAdapt er( ) publ ic v oi d wi ndo wCl os in g( Wi nd owEv en t e) Syst em.e xi t( 0) ;);setS iz e( 350, 250);/ 设 置窗 口 大 小setL ocat io n( 20 0,2 00)

6、;/ /设置窗口 显示位置setF ont( new Font( Aria l ,F ont. PLAI N, 12 ) ; / 设置字体setL ay out( new Flo wLa yo ut () );Ar ea =n ew T extA rea (6 ,4 0) ;tf 1=new Text Fi eld (10); t f2 =new Te xtF ie ld (1 0) ;bt n1 =n ew B ut to n( 显 示 ); b tn 2=new Butt on( 退 出 );f =new Text Fi el d(2 0);add( Ar ea); a dd(ne w L

7、 abel ( 用 户 名 ) );add( tf 1) ; add( new La be l( 电 话);add( tf2) ; add( f);ad d( btn1);add(btn2) ;tf 1. addAct io nListener( this);tf2.addAc ti onLi st ener(t hi s) ;bt n1.add Ac ti onListen er (this);bt n2.add Ac ti onListen er (this);show() ;publ ic s ta ti c voi d mai n( St ri ng ar gs ) new SY5_

8、2 ( );publ ic v oi d ac tio nPerf or med( Actio nEvent e) i f ( e. getS ou rc e() =btn 1)f. setT ext( 你 按下 了 “ + e.g et Act io nCommand () + ” 按 钮 ) ;i f ( e. getS ou rc e() =t f1 )Area.a ppend(用户名:+ tf 1. getTe xt( )+ n);i f ( e. getS ou rc e() =t f2 )Ar ea.a ppend( 电 话 : +tf 2. ge tT ext ( )+ n );

9、 i f ( e. getS ou rc e() =btn 2) f or (i nt i =0; i1 00000000; i +);di sp os e( ); / 只 关 闭 当 前 窗 口 , 注 销 该 对 象编译并运行程序( 三 ) 为 窗 口添 加 菜 单程 序 功 能 :在 窗口 中 添 加 菜 单栏 ,在 菜 单 栏 添 加 菜 单项 ,并 添 加 下 拉 菜 单 和 2 级 菜单 ,通 过 选择 菜 单 项 可 以执 行不 同 操 作 ,如“ 打 开 ”可 打 开 SY5_3 类生 成 的 窗 口 。源 代码 如 下 :i mport j ava. awt.* ;i mpo

10、rt j ava. awt.e ven t. *;publ ic c la ss SY5_3 ext en ds F ra me i mple ment s Actio nLi st ener Panel p=new Panel ( );Butt on b =new B utt on( 退出 );MenuBar mb=n ew Me n uBar () ; / 以 下 生成 菜 单 组 件 对 象Menu m1=ne w Menu( 文 件 ) ;Menu It em o pe n= new Menu It em( 打 开 );Menu It em c lo se =new MenuI te

11、m( 关 闭 ) ;Menu It em e xi t= new Menu It em( 退 出 );Menu m12=new Menu( 编 辑 );Menu It em c opy= new Menu It em( 复制);Menu It em c ut =new MenuI te m( 剪 切 ) ;Menu It em p aste =new MenuI te m( 粘 贴 ) ;Menu m2=new Menu( 帮 助 ) ;Menu It em c onte nt= new MenuI te m( 目 录) ;Menu It em i ndex =new MenuI te m(

12、索 引 ) ;Menu It em about =new MenuI te m( 关 于 ) ;SY5_3( ) super( 添加 菜单 的 窗 口 ) ;setS iz e( 350, 200);add( S outh , p) ;p. ad d( b) ;b. ad dAct io nL is ten m1.a dd(o pen) ; / m1.a dd(c lo se );m1.a ddSepara to r() m1.a dd(e xi t) ;o pen.a dd Ac ti onLis 听器er( th is );将 菜 单 项加 入 到 菜 单 m1 中注册事件监; / / 在

13、 菜单 中添 加 分 隔 条t en er (t hi s) ; / 给 菜 单 项 opene x it.a dd Ac ti onLis t ener (t hi s) ;mb.a dd (m 1) ; / 将 菜 单 m1 加 入 到 菜 单 栏 mb 中m12. add( co py ); m1 2.a dd(c ut ); m12. add(p aste );m1.a dd(m12); / 将 m12 作为 2 级 菜单 添 加 到 m1 菜 单 项 中 m2.a dd(c onte nt ); m2.a dd(i ndex) ; m2.a dd Separ ato r( ); m2

14、.a dd(a bout );mb.a dd (m 2) ;s etM en uBar (mb) ; / / 设 置 菜单 栏 为 mb show() ;/ / 显 示 组 件publ ic s ta ti c voi d mai n( St ri ng ar gs ) new SY5_ 3 ( );publ ic v oi d ac tio nPerf or med( Actio nEvent e) i f ( e. getA ct io nCo mmand () = 退 出 ) Syst em.e xi t( 0) ;i f ( e. getA ct io nCo mmand () = 打

15、 开 ) new SY5_2( ); 编译并运行程序。( 四 ) 使 用 Swi ng 组 件 、 了 解 事 件 处 理机 制在 Java 中 , 能 够 实 现 图 形 用 户 界 面 的 类 库 有 两 个 : jav a.a wt 和 j avax. swing 。 前 者 称 为 抽 象 窗 口 工 具 库 AWT( Abst r ac t Win dows Tool ki t ) , 后 者 是 Java 基 础 类 库 JFC( Java Foundat i on C la ss es ) 的 一 个 组 成部 分 ,它 提 供 了 一套 功能 更 强 、数 量 更 多、更 美 观 的图 形 用 户界面组件。Swin g组件名称和AWT组件名称基本相同,但以J开头, 例 如 AWT 按 钮 类 的 名 称 是 Butt on ,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

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