第6图形用户界面

上传人:工**** 文档编号:568596405 上传时间:2024-07-25 格式:PPT 页数:53 大小:297.50KB
返回 下载 相关 举报
第6图形用户界面_第1页
第1页 / 共53页
第6图形用户界面_第2页
第2页 / 共53页
第6图形用户界面_第3页
第3页 / 共53页
第6图形用户界面_第4页
第4页 / 共53页
第6图形用户界面_第5页
第5页 / 共53页
点击查看更多>>
资源描述

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

1、Computer_yuComputer_yuComputer_yuComputer_yu第6章 图形用户界面6.1 Java图形用户界面初步6.2 事件处理6.3 布局管理6.4 Swing组件6.5 图形设计侦事堆雁绷贡憨褐较瞻贷胞吧陵罩褒按已正婿唁犬盒缝磕埋丽悬香戒拨翁第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.1 Java图形用户界面初步图形用户界面初步6.1.1 Java图形用户界面概述图形用户界面概述6.1.2 AWT组件概述组件概述焦鼎规陕耍计襟搜馆恐疮偏眶投湿殃织小疆妻酮菲侨肾邦萌食静胎世扒套第6图形用户界面第6图形用户界面Java2程序设计实用教程(

2、第2版)6.1.1 Java图形用户界面概述图形用户界面概述图形用户界面概念图形用户界面概念图形用户界面(图形用户界面(Graphical User Interface,GUI),使用图形方式借助菜单、按钮等标准),使用图形方式借助菜单、按钮等标准界面元素和键盘、鼠标操作,实现人机交互。界面元素和键盘、鼠标操作,实现人机交互。Java的的AWT和和Swingjava.awt包提供抽象窗口工具集(包提供抽象窗口工具集(Abstract Window Tookit,AWT)。)。 javax.swing包提供包提供JDK 1.2的的Swing组件,组件,它扩展了它扩展了AWT组件的功能。组件的功能

3、。 酚敛测订虫癣庄劈侯革热磋雄技枚煽抠袱质丫势进纠赣拟潮夫骤玲渴框瑞第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.1.2 AWT组件概述组件概述图图6.1 java.awt包中主要类及组件类的继承关系包中主要类及组件类的继承关系 逞饶瘴组昨反潮客黎侮短狄伤然财躁舷佯田扦撕泛髓斯祸败筹僳咯拖愉拓第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.1.2 AWT组件概述组件概述组件组件public abstract class Component extends Object implements ImageObserver, MenuContaine

4、r, Serializable public void setLocation(int x, int y) /设置组件位置设置组件位置 public void setSize(int width, int height) /设置组件的宽度和高度设置组件的宽度和高度 public void setVisible(boolean b) /设置组件是否显示设置组件是否显示啄雷皆呜舵臭获洋温桩考他械论畅洱馁患将枣渡侣戊窖候鸵藤搞烫潍抄抹第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.1.2 AWT组件概述组件概述2.容器容器public class Container exte

5、nds Component public void setLayout(LayoutManager mgr) /设置布局管理器设置布局管理器 public Component add(Component comp) /在容器中添加一个组件在容器中添加一个组件comp仟距怯呸粮佐牙浮寅镜拒瑚恐求巾盛漳无吝珍涧惩呛幽洪宫位帖咽弧洲价第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.1.2 AWT组件概述组件概述3.窗口(窗口(window)和面板()和面板(panel)4.框架框架Frame和对话框和对话框Dialog框架框架public class Frame extend

6、s Window implements MenuContainer public Frame() public Frame(String title) /参数参数title指定框架的标题指定框架的标题 public String getTitle() /获取框架的标题获取框架的标题 public void setTitle(String title) /设置或修改框架的标题设置或修改框架的标题 public void setBackground(Color c) /设置框架的背景颜色设置框架的背景颜色 public void setResizable(boolean resizable) /设

7、置框架是否可变大小设置框架是否可变大小屈八普拼拜蛹烹极说芍朴恨薯玄诀吾挝役喝锈袱船廊隶床兼扮宝吐乡驼血第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.1.2 AWT组件概述组件概述对话框对话框public class Dialog extends Window public Dialog(Frame owner) /owner指明拥有对话框的框架指明拥有对话框的框架 public Dialog(Frame owner, String title) /title是对话框的窗口标题是对话框的窗口标题 public Dialog(Frame owner, boolean mo

8、dal) /modal指明该对话框是否为模指明该对话框是否为模式窗口式窗口 public Dialog(Frame owner, String title, boolean modal)硬钮遭押励居连狗块硬龋省另遇搔州浮沟幽等渐僵垦少丛钧塑灭挠泉续闪第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.1.2 AWT组件概述组件概述5.标签标签public class Label extends Component implements Accessible public static final int LEFT /左对齐,默认值左对齐,默认值 public static

9、final int CENTER /居中居中 public static final int RIGHT /右对齐右对齐 public Label() public Label(String text) /text指定显示字符串指定显示字符串 public Label(String text, int alignment) /alignment指定对齐方式指定对齐方式 public String getText() /获得显示字符串获得显示字符串 public void setText(String text) /设定显示字符串设定显示字符串皱既樱尽伤抑套撒芳楔塔种钠肆危惹例崔反台访级削爹糟昭

10、翟庶午酝健黑第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.1.2 AWT组件概述组件概述6.文本行文本行public class TextField extends TextComponent public TextField() public TextField(String text) public TextField(int columns) public TextField(String text, int columns) /text指定内容,指定内容,columns指定列数指定列数public class TextComponent extends Com

11、ponent implements Accessible public String getText() /获得文本行中的内容获得文本行中的内容 public void setText(String t) /设置文本行中的内容设置文本行中的内容 public void setEditable(boolean b) /设置文本行是否可编辑设置文本行是否可编辑咽朵曼帖其涌叔县鸿隶椽获集邮几尾淬苛稳鸣做涨世护志钢拼逆都谰郴士第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.1.2 AWT组件概述组件概述7.按钮按钮public class Button extends Comp

12、onent implements Accessibl public Button(String label)/label指定按钮的标签指定按钮的标签8.错误与异常类错误与异常类【例【例6.1】 用户登录窗口。用户登录窗口。帚耕绞酗幌伯扼俘荫漫氨撒份吠鞍毅慧聋纯艘门花的腔慈露朽浑尘吴沽鞋第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.2 事件处理事件处理6.2.1 AWT的委托事件模型的委托事件模型6.2.2 AWTEvent事件类事件类6.2.3 事件监听器接口和事件适配器类事件监听器接口和事件适配器类陕延练乙儿密佑雾馋举梯盂驾翼掐划前玛钮羊气豺哆哉批衫壮俐碌鸽茎直第6

13、图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.2.1 AWT的委托事件模型的委托事件模型事件事件事件(事件(event)是指一个状态的改变,或者一个活动的发)是指一个状态的改变,或者一个活动的发生。例如,单击一个按钮,将产生单击事件等。生。例如,单击一个按钮,将产生单击事件等。事件类事件类窗口事件类(窗口事件类(WindowEvent)和单击事件类)和单击事件类(ActionEvent)等)等 事件源事件源产生事件的组件称为事件源(产生事件的组件称为事件源(event source) 。事蹭除虎残标牵罗途嘿均睹翁季靴醚拄奉缺轮授和盾郎握拨夏袖丰舟庶罚第6图形用户界面第6图

14、形用户界面Java2程序设计实用教程(第2版)6.2.1 AWT的委托事件模型的委托事件模型4.事件监听器事件监听器事件源组件注册事件监听器事件源组件注册事件监听器public class Button extends Component implements Accessibl public void addActionListener(ActionListener l)/注册单击事件监听器注册单击事件监听器 public void removeActionListener(ActionListener l) /取消注册单击事件监听器取消注册单击事件监听器例如,例如,button.addAc

15、tionListener(this); /为按钮注册单击事件监听器为按钮注册单击事件监听器事件处理方法事件处理方法public interface ActionListener extends EventListener public void actionPerformed(ActionEvent e); /单击事件处理方法单击事件处理方法坝锈衍闭砚真殊脯搀坪兹妥餐慎格遭婪萝袖拳奈辅璃毕蔑脐厉敝蟹嚷赚浸第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)图图6.3 按钮单击事件的响应及处按钮单击事件的响应及处理流程理流程 隙忌棺祭簧涡馆叠廉聊滑恍阁阎掣蹬档坏乌忽姆凝兑桨篡振他

16、踢枕嘎顽工第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.2.1 AWT的委托事件模型的委托事件模型【例【例6.2】 计算器程序雏形。计算器程序雏形。按钮单击事件的响应和处理按钮单击事件的响应和处理关闭窗口事件的响应和处理关闭窗口事件的响应和处理5.图形用户界面的运行由事件驱动图形用户界面的运行由事件驱动不同组件的事件或同一组件的不同事件具有不同组件的事件或同一组件的不同事件具有约定的执行次序。约定的执行次序。 各组件的事件处理方法是否执行以及执行次各组件的事件处理方法是否执行以及执行次序,取决于用户操作。序,取决于用户操作。 在一个事件处理方法中,程序按照语句的书在一

17、个事件处理方法中,程序按照语句的书写次序顺序执行。写次序顺序执行。荒劲仅鬼佑谣山结胚峦己瘫能基旷堕资岁独谐楷篆催避掠楔婚蹋什匿冉例第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.2.2 AWTEvent事件类事件类图图6.5 AWT事件类及其层次结构事件类及其层次结构 咯帛戎拇腋吵恢仇寝买厂枚芜待雪千听巍润磅摆工室酮崔迭言跃阮砾掠胯第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.2.2 AWTEvent事件类事件类public class EventObject implements java.io.Serializable public Obj

18、ect getSource() /返回产生事件的事件源组件返回产生事件的事件源组件 public String toString() /返回事件对象信息返回事件对象信息public class ActionEvent extends AWTEvent public String getActionCommand() /获得按钮的标签获得按钮的标签剩媒效广勺彝焉贫铡硬众拱呈筷篓镣雇据鄙护廊焦耸虏翰八食笑峡该颂乖第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.2.3 事件监听器接口和事件适配事件监听器接口和事件适配器类器类事件监听器接口事件监听器接口public inter

19、face ComponentListener extends EventListener public void componentResized(ComponentEvent e); /改变组件大小改变组件大小 public void componentMoved(ComponentEvent e); /移动组件移动组件 public void componentShown(ComponentEvent e); /显示组件显示组件 public void componentHidden(ComponentEvent e); /隐藏组件隐藏组件public interface Containe

20、rListener extends EventListener public void componentAdded(ContainerEvent e); /添加组件添加组件 public void componentRemoved(ContainerEvent e); /移动组件移动组件事件监听器接口的意义事件监听器接口的意义蹬姑馋沸甜嫌糊螺执募昌肖式忆各菌冯淳釜戳孜晚拦享易劳怔茂浅髓餐混第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)3. 事件适配器类事件适配器类public abstract class WindowAdapter implements WindowL

21、istener, WindowStateListener, WindowFocusListener public void windowOpened(WindowEvent e) public void windowClosing(WindowEvent e) public void windowClosed(WindowEvent e) public void windowIconified(WindowEvent e) public void windowDeiconified(WindowEvent e) public void windowActivated(WindowEvent e

22、) public void windowDeactivated(WindowEvent e) public void windowStateChanged(WindowEvent e) public void windowGainedFocus(WindowEvent e) public void windowLostFocus(WindowEvent e) 妙就爷硫嘲徽湖汕磨臆捏暗贱汀懒灰给钾泳浙涤块树载苹孩冗悔挟饿郎骆第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)4. 组件类中注册事件监听器的方组件类中注册事件监听器的方法法public abstract class

23、Component extends Object implements ImageObserver, MenuContainer, Serializable public void addKeyListener(KeyListener l) /注册键盘事件监听器注册键盘事件监听器 public void removeKeyListener(KeyListener l) public void addMouseListener(MouseListener l)/注册鼠标事件监听器注册鼠标事件监听器 public void removeMouseListener(MouseListener l)

24、public void addMouseMotionListener(MouseMotionListener l) /注册鼠标移动事件监听注册鼠标移动事件监听器器 public void removeMouseMotionListener(MouseMotionListener l) 娱骄胜牟疮谬姆婆碑连澈栽抒午叮烩耻郁秦砸围蕴都簇情液拙少异竖洪抱第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)【例【例6.3】 显示一个三位整数的各显示一个三位整数的各位数字。位数字。文本行响应单击事件文本行响应单击事件处理输入错误处理输入错误使用对话框使用对话框窗口关闭事件不能委托其他类处

25、理窗口关闭事件不能委托其他类处理译则洁兴滚荆舅柯缺杜盯嚏缀标整糊憋悄糠滚涨报舟谷澜京容择钞应嗓墓第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.3 布局管理布局管理6.3.1 布局管理器类布局管理器类6.3.2 容器的布局特性容器的布局特性誓紫摇致展羚周厦糙拒劝颗真桓静忽雨镭茹迫浸读腐铀狙挨唆氏鬃谦啼卒第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.3.1 布局管理器类布局管理器类FlowLayout(流布局管理器)(流布局管理器)public class FlowLayout implements LayoutManager, java.io.

26、Serializable public static final int LEFT = 0; /左对齐,类常量,全部大写左对齐,类常量,全部大写 public static final int CENTER = 1; /居中居中 public static final int RIGHT = 2; /右对齐右对齐 public FlowLayout() /构造方法,默认居中构造方法,默认居中 public FlowLayout(int align) /align参数指定对齐方式参数指定对齐方式 public FlowLayout(int align, int hgap, int vgap) /

27、hgap、vgap参数指定组件之间水平和垂直间距(像素)参数指定组件之间水平和垂直间距(像素)仔也赋屠铲稼挨烽绎玉抖哈调洽词疼捌洁烩汞芜足扦铭李后挟情简不儒纲第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)2. BorderLayout(边布局管理(边布局管理器)器)public class BorderLayout implements LayoutManager2, java.io.Serializable public static final String NORTH = North; public static final String SOUTH = South

28、; public static final String EAST = East; public static final String WEST = West; public static final String CENTER = Center; /注意,字符串首字母大写注意,字符串首字母大写 public BorderLayout() /构造方法,组件之间的间距为构造方法,组件之间的间距为0像素像素 public BorderLayout(int hgap, int vgap) /参数指定组件之间水平和垂直的间距(像素)参数指定组件之间水平和垂直的间距(像素)贯融搜冒擎承何扩赁羌奉像凶旧

29、甥匹聊啮吏忽僵哗波念曼寅跌狼予汐郸袍第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)3. GridLayout(网格布局管理器)(网格布局管理器)public class GridLayout implements LayoutManager, java.io.Serializable public GridLayout() /构造方法构造方法 public GridLayout(int rows, int cols) /参数指定行、列参数指定行、列 public GridLayout(int rows, int cols, int hgap, int vgap) /后两个

30、参数指定组件之间水平和垂直的间距(像素)后两个参数指定组件之间水平和垂直的间距(像素)筏搀中试酷知你襄灿洲蹿匝知斑抄位凄裕陛寅季扑捉硬支糙丑闹涤泽谩鹿第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.3.2 容器的布局特性容器的布局特性容器的默认布局管理器容器的默认布局管理器赃硼祥倘耍倦蔡泡革挞朝膏独游听陆鸭木膝坎聚驭匿倪盎瘦凰堕埋颂拥蹄第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)2. 设置容器的布局管理器设置容器的布局管理器容器类提供设置布局管理器的方法容器类提供设置布局管理器的方法frame1.setLayout(new FlowLayout(

31、FlowLayout.LEFT);创建面板时可指定布局管理器创建面板时可指定布局管理器public class Panel extends Container implements Accessible public Panel() /默认默认FlowLayout布局布局 public Panel(LayoutManager layout) /layout指定布局管理器指定布局管理器容器类提供添加和移去组件的方法容器类提供添加和移去组件的方法public Component add(Component comp) /在容器中添加一个组件在容器中添加一个组件public void add(Com

32、ponent comp, Object constraints) /用于用于BorderLayout布局管理器布局管理器public Component add(Component comp, int index) /用于用于GridLayout布局管理器布局管理器痞骤盏爷乱商巩端卸盟柬捌寸吟诀籍缘奶午完姥烽香趴潭奢透跨苍刹绝弦第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.4 Swing组件组件6.4.1 Swing组件关系概述组件关系概述6.4.2 窗口组件窗口组件6.4.3 文本显示和编辑组件文本显示和编辑组件6.4.4 按钮组件按钮组件6.4.5 列表框和组合框

33、组件列表框和组合框组件6.4.6 菜单组件菜单组件感泞舍帅拟彪榷惹敢府贿类戌赖从牢瓦萍堆刷胖丹官殿辗逐誊拐瞅肤惶蛀第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.4.1 Swing组件关系概述组件关系概述挥产式广汛卿哪恋蓉候侵为馈附检通缺歪疟遁肮靶币变傈横俯夸嘻胚带郡第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.4.2 窗口组件窗口组件public void setDefaultCloseOperation(int operation)public interface WindowConstants public static final in

34、t DO_NOTHING_ON_CLOSE = 0; /什么也不做什么也不做 public static final int HIDE_ON_CLOSE = 1; /隐藏窗口隐藏窗口 public static final int DISPOSE_ON_CLOSE = 2; /隐藏当前窗口,释放窗口占用的其他资源隐藏当前窗口,释放窗口占用的其他资源 public static final int EXIT_ON_CLOSE = 3; /结束程序运行结束程序运行jframe.setDefaultCloseOperation(EXIT_ON_CLOSE); /结束程序运行结束程序运行jdialog

35、.setDefaultCloseOperation(HIDE_ON_CLOSE); /隐藏对话框而不结束程序运行隐藏对话框而不结束程序运行乱蠢设怂鳞揖乒掺治恿钮友希宰上浓欲毖菱尺豁鹤恭缎攒僳堡娜勺刨血轩第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.4.3 文本显示和编辑组件文本显示和编辑组件文本区文本区public class JTextArea extends JTextComponent public JTextArea() public JTextArea(String text) /参数参数text指定初始显示文本指定初始显示文本 public JTextAr

36、ea(int rows, int columns) /rows、columns指定行数和列数指定行数和列数 public JTextArea(String text, int rows, int columns) public abstract class JTextComponent extends JComponent implements Scrollable, Accessible public String getText() /获得文本行中的内容获得文本行中的内容 public void setText(String t) /设置文本行中的内容设置文本行中的内容 public vo

37、id setEditable(boolean b) /设置文本行是否可编辑设置文本行是否可编辑 public boolean isEditable() /判断文本行是否可编辑判断文本行是否可编辑畴临乖潞慷卞霞诲忧恕削憋论茵滴谐敖檬稍宦度疙祖攘活褪岭蛋钨第僳钓第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.4.3 文本显示和编辑组件文本显示和编辑组件2.文本框的事件处理文本框的事件处理文本编辑事件类文本编辑事件类javax.swing.event.CaretEventnpublic void addCaretListener(CaretListener l) /注册文本编

38、辑事件监听器n文本编辑事件监听器接口CaretListener中只有一个方法caretUpdate(CaretEvent e)。 单击事件类单击事件类ActionEvent鲤涛叙晨纯涯痰燕孜趴文蔚犊耍苦试唤喇箔潘唐吉珠掠瓮劝踌钉承酵锭账第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.4.4 按钮组件按钮组件复选框复选框public class JCheckBox extends JToggleButton implements Accessible public JCheckBox () public JCheckBox (String text) public JCh

39、eckBox (String text, boolean selected) 杉称锈锐蜘让策号爷壶残孪德苍效晦买逻甩抬宴俘冯灼郭叁小慨胸顾骚蝉第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)2. 单选按钮单选按钮public class JRadioButton extends JToggleButton implements Accessible public JRadioButton () public JRadioButton (String text) public JRadioButton (String text, boolean selected) publi

40、c class ButtonGroup extends Object implements Serializable /按钮组类按钮组类 public ButtonGroup() public void add(AbstractButton b) /添加按钮添加按钮 public void remove(AbstractButton b) 销硬肛天脸尘嘉宦枯捡录姨镁雪泄陵私贩与高鬼瀑渊芽霍除纬料成挑挖装第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)3. 抽象按钮类抽象按钮类AbstractButtonpublic abstract class AbstractButton

41、 extends JComponent implements ItemSelectable, SwingConstants public String getText() public void setText(String text) public boolean isSelected() /返回是否选中状态返回是否选中状态 public void setSelected(boolean b) /设置是否选中状态设置是否选中状态 public void setEnabled(boolean b) /设置是否有效状态设置是否有效状态 public Object getSelectedObjec

42、ts() /返回选中对象数组返回选中对象数组 public void addActionListener(ActionListener l) /注册按钮的单击事件监听器注册按钮的单击事件监听器 public void removeActionListener(ActionListener l) public void addItemListener(ItemListener l) /注册按钮的选择事件监听器注册按钮的选择事件监听器 public void removeItemListener(ItemListener l) 谓取鸡伦垒绒透牌醚削匪跋裔堤忱攒心掩骂狈料片请勿泳蓝效谆滑第浴茅第6图

43、形用户界面第6图形用户界面Java2程序设计实用教程(第2版)4. 选项按钮的选择事件处理选项按钮的选择事件处理public void addItemListener(ItemListener l) /注册选择事件监听器注册选择事件监听器妄崖励辙谜冕郁鸳越崎这戌吭嚼饲缴姿抠智聋挎凸墙榔辅速铃叮定竹荣专第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.4.5 列表框和组合框组件列表框和组合框组件列表框列表框public class JList extends JComponent implements Scrollable, Accessible public JList(

44、) public JList(final Object listData) /列表框中的数据项由对象数组提供列表框中的数据项由对象数组提供 public int getSelectedIndex() /返回第返回第1个选中数据项的序号,从个选中数据项的序号,从0开始;没有选中时返回开始;没有选中时返回-1 public Object getSelectedValue() /返回列表框第返回列表框第1个选中数据项对象;没有选中时返回个选中数据项对象;没有选中时返回null public void setListData(final Object listData) /重新设置列表框中的数据项重新

45、设置列表框中的数据项例如,例如,Object area=南京市南京市, 苏州市苏州市, 无锡市无锡市;JList list_user = new JList(area);功巳镁囱亿坎终定跌促啼昂济馏霖鹃无毖叁增直晚烬槽贼锑门拘踩喘佣澈第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)2. 组合框组合框public class JComboBox extends JComponent implements ItemSelectable,ListDataListener,ActionListener, Accessible public JComboBox() public JC

46、omboBox(final Object items) /组合框中的数据项由对象数组提供组合框中的数据项由对象数组提供 public void addItem(Object anObject) /添加数据项添加数据项 public Object getSelectedItem() /返回选中数据项对象返回选中数据项对象 public int getSelectedIndex() /返回选中数据项索引返回选中数据项索引痕谰呸庐暗捎妆绽混滓裔荒谎鲁娱版刺其歧掣雷珊晤朋瞄穴寡乐渐薄腹焊第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)【例【例6.4】 输入用户信息。输入用户信息。框

47、架窗口采取关闭时结束程序运行方式框架窗口采取关闭时结束程序运行方式使用单选按钮使用单选按钮组合框的选择事件处理组合框的选择事件处理敷裂鹊斡体导保忍自太争米猖垦桐卑计搀竣汗凹狙揩沤林佰怒几狂论压熊第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.4.6 菜单组件菜单组件使用菜单的两种方式使用菜单的两种方式窗口菜单窗口菜单快捷菜单快捷菜单它州宙滁剿摧屈幅篓朝采炔稠靡栖伶缅讶掉结氓华编是市剁忿乒娟骗赫棱第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)2. 菜单栏菜单栏public class JMenuBar extends JComponent imple

48、ments Accessible,MenuElement public JMenuBar() public JMenu add(JMenu c) /添加菜单添加菜单Frame类提供类提供setJMenuBar()方法将菜单栏放置在框架方法将菜单栏放置在框架窗口上方,该方法声明如下:窗口上方,该方法声明如下:public void setJMenuBar(JMenuBar menubar)懊恶店献团盛笛镀胆姚锣祁蹲裁酱柳韶侈念呼讨瓣籽达劝装肆沽欣苏躺貉第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)3. 菜单菜单public class JMenu extends JMenu

49、Item implements Accessible,MenuElement public JMenu() public JMenu(String s) /s指定菜单标题指定菜单标题 public JMenuItem add(JMenuItem menuItem) /添加菜单项添加菜单项 public Component add(Component c) /添加组件添加组件 public void addSeparator() /添加分隔线添加分隔线宙驹列涌悬觉赎眼露桶负菇炬也点坊枷迅分楷秽惧拙耍莽次拴坚摩枫赦藩第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)4. 菜单项菜

50、单项public class JMenuItem extends AbstractButton implements Accessible,MenuElement public JMenuItem() public JMenuItem(String text) /text指定菜单标题指定菜单标题 public JMenuItem(String text, Icon icon) /icon指定菜单图标指定菜单图标 public void setAccelerator(KeyStroke keyStroke) /设置快捷键设置快捷键惜前召留眼釉匝激诧帅肉嵌矾瞳酷米酶征脱初却骚歌锡童薯矮莫寐蛛铱寞第

51、6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)5. 选择菜单项选择菜单项复选菜单项复选菜单项public class JCheckBoxMenuItem extends JMenuItem implements SwingConstants, Accessible public JCheckBoxMenuItem() public JCheckBoxMenuItem(String text) /text指定标题指定标题 public JCheckBoxMenuItem(String text, boolean b) /b指定初始状态指定初始状态 public JCheckB

52、oxMenuItem(String text, Icon icon, boolean b) /icon指定图标指定图标导厕瞧挥坞僚惭笆胯径边悄晤僚呕奔涛憎态懒耀泊诗秉揭廓只滴提澡瞩姿第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)5. 选择菜单项选择菜单项2.单选菜单项单选菜单项public class JRadioButtonMenuItem extends JMenuItem implements Accessible public JRadioButtonMenuItem() public JRadioButtonMenuItem(String text) publi

53、c JRadioButtonMenuItem(String text, boolean selected) public JRadioButtonMenuItem(String text, Icon icon, boolean selected) 萎俗签凸荆诀让梯咸雹淫饺臼发篙葵簇卵捞抗习网源勇追中尹软泻汞愉便第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.快捷菜单快捷菜单public class JPopupMenu extends JComponent implements Accessible,MenuElement public JPopupMenu() pub

54、lic JMenuItem add(JMenuItem menuItem) /添加菜单项添加菜单项 public void addSeparator() /添加分隔线添加分隔线 public void show(Component invoker, int x, int y) /在在(x,y)位置处显示快捷菜单,位置处显示快捷菜单,invoker指定快捷菜单所依附的组件指定快捷菜单所依附的组件java.awt.Component组件类提供下列组件类提供下列add()方法用于任何组件添加快捷菜单:方法用于任何组件添加快捷菜单: public void add(PopupMenu popup) /

55、添加快捷菜单添加快捷菜单膳息圆咕酬搞盖卯起丙鼠疮宗坍苟晶搐灰礼岭鞭困亡惹熄钎栓遍惠惫篓瞅第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)【例【例6.5】 文本编辑器。文本编辑器。对话框采取关闭时隐藏方式对话框采取关闭时隐藏方式使用窗口菜单使用窗口菜单使用快捷菜单使用快捷菜单使用使用java.awt.Font字体类字体类当字号值不合适时抛出异常当字号值不合适时抛出异常throw new Exception(“SizeException”); /抛出异常对象抛出异常对象catch(Exception ex) if (ex.getMessage()=SizeException)

56、/捕获自己抛出的异常对象捕获自己抛出的异常对象蜡前贷豌扛闸陇困苯景删郡把归胁践钦寿际豁襟嗜耽几果赴眺斧卧敦帖哟第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.5 图形设计图形设计6.5.1 绘图类绘图类6.5.2 在组件上绘图在组件上绘图政瘤宽呜罢虚牲札浮篷织罐接殃烩撑咨卯瞧疑港弹此玛刹裤粒闺侮起贮伎第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)6.5.1 绘图类绘图类public abstract class Graphics extends Object public abstract Color getColor(); /获取当前颜色获取当前

57、颜色 public abstract void setColor(Color c); /设置颜色设置颜色 public abstract void drawLine(int x1, int y1, int x2, int y2); /在两点在两点(x1,y1)、(x2,y2)间画一条直线间画一条直线 public void drawRect(int x, int y, int width, int height) /画矩形画矩形 public abstract void fillRect(int x, int y, int width, int height); /填充矩形填充矩形 publi

58、c abstract void clearRect(int x, int y, int width, int height); /清除矩形清除矩形 /(x,y)指定矩形左上角坐标,指定矩形左上角坐标,width、height指定矩形的宽度和高度指定矩形的宽度和高度 public abstract void drawOval(int x, int y, int width, int height); /画椭圆画椭圆 public abstract void fillOval(int x, int y, int width, int height); /填充椭圆填充椭圆 /(x,y)、width、

59、height指定椭圆外切矩形的左上角坐标、长度和宽度。当指定椭圆外切矩形的左上角坐标、长度和宽度。当width=height时,圆时,圆 public abstract void drawString(String str, int x, int y); /在在(x,y)指定坐标位置显示字符串指定坐标位置显示字符串 public abstract Font getFont(); /获得颜色获得颜色 public abstract void setFont(Font font); /设置颜色设置颜色律铣描理氮衫皑启钵氮寂蛀糕侩癣路碱肃屎惑现瓶况厢贯熙训哀骂诅抠赚第6图形用户界面第6图形用户界面J

60、ava2程序设计实用教程(第2版)6.5.2 在组件上绘图在组件上绘图组件绘图方法组件绘图方法public void paint(Graphics g) /在组件上绘制图形在组件上绘制图形public void repaint() /调用调用paint()方法刷新图形方法刷新图形重新绘制图形重新绘制图形绘图坐标系绘图坐标系善氨框胳瞎兼雄平葬飘拐扩雄葛幌帽鞘塔于悸蔓抵院吼亨俞鳖莹左剧誓幕第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)【例【例6.6】 四叶玫瑰线的图形设计。四叶玫瑰线的图形设计。在框架窗口上绘图在框架窗口上绘图重画重画组合框中容纳颜色常量值组合框中容纳颜色常量

61、值Object data=Color.red, Color.green, Color.blue;combobox_color = new JComboBox(data); /颜色组合框颜色组合框g.setColor(Color)combobox_color.getSelectedItem(); /设置画线颜色为组合框选中颜色设置画线颜色为组合框选中颜色苇的罩兰看撕溜酚韭琴褥甸期苞赫拴琉虚掉葬贺硷第僧晚拷削竖茁芯仆鳖第6图形用户界面第6图形用户界面Java2程序设计实用教程(第2版)实验实验6 图形用户界面设计图形用户界面设计计算器设计计算器设计整数进制转换整数进制转换货币转换货币转换画月亮画月亮馁沿比牢刘剑木声烛甘镀灰否翔藏惦盼接夕纯栗音栖箩万解嘿诗冀腊奢礼第6图形用户界面第6图形用户界面

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

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