您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > Java语言程序设计4-9-%・第十四讲 选择型组件与窗口事件
河南经贸职业学院—信息管理系主讲教师:武俊琢第十四讲选择型组件与窗口事件Checkbox、CheckboxGroup、Choice、List、窗口事件河南经贸职业学院—信息管理系主讲:武俊琢*****温故*****异常处理及应用异常处理机制try{}catch(Exceptione){}人工抛出异常throw异常对象;定义方法时抛出异常throws异常类型该方法内部可能会产生异常,但是本身并不捕获处理,而交由调用它的方法去处理。按钮的创建及应用按钮的ActionEvent事件处理扩展按钮标签的创建和使用河南经贸职业学院—信息管理系主讲:武俊琢*****知新*****选择型组件CheckboxCheckboxGroupChoiceList窗口事件及其处理窗口事件监听器接口窗口事件适配器类内部类(补充)内部匿名类(补充)河南经贸职业学院—信息管理系主讲:武俊琢Checkbox类复选框是一个可处于“开”(true)和“关”(false)两种状态的图形组件。单击复选框可将其状态从“开”改变到“关”,或从“关”改变到“开”。Checkbox类的构造方法:Checkbox()Checkbox(Stringlabel):建立标题为label的Checkbox。Checkbox(Stringlabel,booleanstate):设置标题为label,并将状态设置为state。若state为true,则Checkbox一开始即为选中的状态,反之则没有,就跟没有加state参数一样。Checkbox(Stringlabel,booleanstate,CheckboxGroupgroup):跟前一个相同,但多了一个group参数,表示将Checkbox加进一个CheckboxGroup,同一个组合中的Checkbox一次只能有一个被选取。Checkbox(Stringlabel,CheckboxGroupgroup,booleanstate):作用跟前一个完全一样。Checkbox类的方法:河南经贸职业学院—信息管理系主讲:武俊琢Checkbox类的方法publicbooleangetState()获取检查框的状态publicStringgetLabel()获取检查框的标题publicvoidaddItemListener(ItemListenerl)注册改变选项状态的事件监听器publicvoidsetState(booleanstate)设置检查框状态publicvoidsetLabel(Stringlabel)设置检查框标题河南经贸职业学院—信息管理系主讲:武俊琢Checkbox实例importjava.awt.*;importjava.awt.event.*;publicclassE2extendsFrameimplementsItemListener{Checkboxcheck1,check2;TextFieldtf;publicE2(){setSize(400,300);setLayout(newFlowLayout());check1=newCheckbox(“音乐”);check2=newCheckbox(绘画);tf=newTextField(10);tf.setEditable(false);add(check1);add(check2);add(tf);check1.addItemListener(this);check2.addItemListener(this);}publicE2(Strings){this();setTitle(s);}河南经贸职业学院—信息管理系主讲:武俊琢publicvoiditemStateChanged(ItemEvente){Strings=null;Checkboxc;c=(Checkbox)e.getSource();if(c.getState())s=c.getLabel();tf.setText(s);}publicstaticvoidmain(String[]args){E2f=newE2(检查框);f.setVisible(true);}}Checkbox实例(续)河南经贸职业学院—信息管理系主讲:武俊琢CheckboxGroup类CheckboxGroup类用于将一个Checkbox按钮集组成一组。一组中的Checkbox对象只有一个是被选中状态。CheckboxGroup类的构造方法Checkbox():构造方法很简单,不加任何参数。使用步骤:创建CheckboxGroup对象,如chg创建属于chg的Checkbox对象,如:newCheckbox(男,chg,true)newCheckbox(女,chg,true)CheckboxGroup类的方法publicCheckboxgetSelectedCheckbox():获取这个复选框组中处于选中状态的Checkbox对象。如果均未选中则返回null。河南经贸职业学院—信息管理系主讲:武俊琢//修改上例中部分程序publicclassE2extendsFrameimplementsItemListener{Checkboxcheck1,check2;CheckboxGroupchg;TextFieldtf;publicE2(){setSize(400,300);setLayout(newFlowLayout());chg=newCheckboxGroup();check1=newCheckbox(音乐,chg,true);check2=newCheckbox(绘画,chg,false);tf=newTextField(10);tf.setEditable(false);add(check1);add(check2);add(tf);check1.addItemListener(this);check2.addItemListener(this);}CheckboxGroup实例河南经贸职业学院—信息管理系主讲:武俊琢Choice类Choice——选项框,又称下拉列表。Choice类的构造方法Choice():建立一个空的Choice组件,不含任何选项。Choice类的常用方法publicvoidadd(Stringitem)添加一选项到Choice菜单中publicStringgetItem(intindex)获得此Choice菜单中指定索引上的字符串publicStringgetSelectedItem()获得当前选择的字符串表示形式publicvoidaddItemListener(ItemListenerl)添加选项事件监听器Choice类使用的步骤①创建一个Choice对象②增加选项到Choice对象中③预设选择项目河南经贸职业学院—信息管理系主讲:武俊琢Choice实例importjava.awt.*;importjava.awt.event.*;publicclassE4extendsFrameimplementsItemListener{Choicechoice;TextFieldtf;publicE4(){setSize(400,300);setLayout(newFlowLayout());choice=newChoice();choice.add(党员);choice.add(团员);choice.add(群众);tf=newTextField(10);tf.setEditable(false);add(choice);add(tf);choice.addItemListener(this);}publicE4(Strings){this();setTitle(s);}河南经贸职业学院—信息管理系主讲:武俊琢publicvoiditemStateChanged(ItemEvente){Strings=null;s=((Choice)e.getSource()).getSelectedItem();tf.setText(s);}publicstaticvoidmain(String[]args){E4f=newE4(Choice实例);f.setVisible(true);}}Choice实例(续)河南经贸职业学院—信息管理系主讲:武俊琢List类List组件描述了一个文本项的滚动列表List类的构造方法List():建立一个空的List对象。List(introws):建立一个空的List单选对象,并设置最多可同时显示rows个选项。List(introws,booleanmultipleMode):设置最多可同时显示rows个选项,也可以设置是否允许使用者复选,如果multipleMode的值为true,则允许复选,反之则只允许单选。List类的常用方法publicvoidadd(Stringitem)publicStringgetSelectedItem()publicString[]getSelectedItems()publicvoidaddItemListener(ItemListenerl)使用List类的步骤:创建List对象。为List对象添加选项河南经贸职业学院—信息管理系主讲:武俊琢修改上例Listlist;TextFieldtf;publicE5(){setSize(400,300);setLayout(newFlowLayout());list=newList(5,true);list.add(高中);list.add(大专);list.add(本科);list.add(研究生);tf=newTextField(10);tf.setEditable(false);add(list);add(tf);list.addItemListener(this);}List类应用实例河南经贸职业学院—信息管理系主讲:武俊琢窗口事件WindowEvent凡是Window的子类,都能引发WindowEvent事件,当一个窗口被激活、撤消激活、打开、关闭、图标化、撤消图标化,均能引发窗口事件。WindowListener接口处理窗口事件,必须注册窗口事件监听器:addWindowListener(窗口事件监听器对象)窗口事件监听器类必须实现WindowListener接口WindowListener接口中七个方法publicvoidwindowOpened(WindowEvente)publicvoidwindowClosing(WindowEvente)publicvoidwindowClosed(WindowEvente)publicvoidwindowIconified(WindowEvente)publicvoidwindowDeiconified(WindowEvente)publicvoidwindowActivated(WindowEvente)publicvoidwindowDeactivated(WindowEvente)河南经贸职业学院—信息管理系主讲:武俊琢窗口事件处理实例importjava.awt.*;importjava.awt.event.*;publicclassE6extendsFrame{publicE6(){setSize(500,300);addWindowListener(newMyListener());}publicstaticvoidmain(String[]args){E6e=newE6();e.show();}}classMyListenerimplementsWindowListener{publicvoidwindowOpened(WindowEvente){}publicvoidwindowClosing(WindowEvente){Sys
本文标题:Java语言程序设计4-9-%・第十四讲 选择型组件与窗口事件
链接地址:https://www.777doc.com/doc-3748586 .html