Java课程设计Java程序设计_第1页
Java课程设计Java程序设计_第2页
Java课程设计Java程序设计_第3页
Java课程设计Java程序设计_第4页
Java课程设计Java程序设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、java 设 计 报 告 书课程名称: java程序设计 设计题目: 选 择 院 系; 计算机科学与信息工程系 目 录一、问题描述:3二、设计思路:31 类图32 说明4三、运行结果:51单项选择52单区间选择63多区间选择7四、源代码:7五、总结:11六、参考文献:11选择一、问题描述:编写程序,演示在列表中选择条目。程序用组合框指定选择方式,选择条目后,列表框下方的标签中就会显示选定项。二、设计思路:1 类图2 说明类xuanze继承jframe的方法,new一个jscrollpane1,将jlist1放在其中,为框架设置一border布局管理器,将选择下拉列表框,和其列表框的文字说明la

2、bel放在一个jpselectionmode的panel内,同样用border布局管理器放置,label放置在左边(west),选择下拉列表框放置在右侧(center)。panel放置在整个框架的最上方(north),放置列表的jscrollpane1放置在中间(center),显示选择内容的标签,放在整个框架的最下方(south)。整个框架的布局完成。为实现所选择的内容显示在下方的标签内,为list添加匿名内部类监听器,同时调用jlist1_valuechanged方法。下方标签内的初始化值为status。indices用来统计选择的条目数量,而selecteditems对象用来返回所选择条

3、目的内容。为实现,在下拉列表框中选择选项,在list中实现所选择选项的选择方式,给下拉列表框添加匿名内部类监听器,监听器实现调用jcoboselectionmode_actionperformed方法,该方法使用getselecteditem方法,返回所选择的选择方式。最后给整个框架设置各种参数。三、运行结果:1单项选择2单区间选择3多区间选择四、源代码:import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;public class xuanze extends jfr

4、ame private jscrollpane jscrollpane1 = new jscrollpane(); private jlist jlist1 = new jlist(); private jpanel jpselectionmode = new jpanel(); private jcombobox jcboselectionmode = new jcombobox(); private jlabel jlblstatus = new jlabel(); private jlabel jlabel1 = new jlabel(); private borderlayout bo

5、rderlayout1 = new borderlayout(); / create an array of strings for country names private string countries = united states, united kingdom, china, germany, france, canada; /construct the applet public xuanze() this.setsize(new dimension(400, 300); jlist1.setlistdata(countries); jlist1.addlistselectio

6、nlistener(new javax.swing.event.listselectionlistener() public void valuechanged(listselectionevent e) jlist1_valuechanged(e); ); jpselectionmode.setlayout(borderlayout1); jcboselectionmode.addactionlistener(new java.awt.event.actionlistener() public void actionperformed(actionevent e) jcboselection

7、mode_actionperformed(e); ); jlblstatus.settext(status); jlabel1.settext(选择一种选择方式); add(jscrollpane1, borderlayout.center); jscrollpane1.getviewport().add(jlist1, null); add(jpselectionmode, borderlayout.north); jpselectionmode.add(jlabel1, borderlayout.west); jpselectionmode.add(jcboselectionmode, b

8、orderlayout.center); add(jlblstatus, borderlayout.south); / add selection modes to the combo box jcboselectionmode.additem(单项选择); jcboselectionmode.additem(单区间选择); jcboselectionmode.additem(多区间选择); /main method public static void main(string args) xuanze frame = new xuanze(); frame.settitle(选择); fra

9、me.setdefaultcloseoperation(jframe.exit_on_close); frame.setsize(400,320); frame.setlocationrelativeto(null); / center the frame frame.setvisible(true); / handler for selecting items from a combo box void jcboselectionmode_actionperformed(actionevent e) string selectedmode = (string)jcboselectionmod

10、e.getselecteditem(); if (selectedmode.equals(单项选择) jlist1.setselectionmode(listselectionmodel.single_selection); else if (selectedmode.equals(单区间选择) jlist1.setselectionmode(listselectionmodel.single_interval_selection); if (selectedmode.equals(多区间选择) jlist1.setselectionmode(listselectionmodel.multip

11、le_interval_selection); / handler for item selection in the list void jlist1_valuechanged(listselectionevent e) int indices = jlist1.getselectedindices(); object selecteditems = jlist1.getselectedvalues(); string display = ; for (int i = 0; i indices.length; i+) display += (string)selecteditemsi + ; jlblstatus.settext(display); 五、总结:1该程序利用下拉列表框和添加监听器的方法实现了一些功能,但是太过简单,其中实现选择的方法是java自身所有的类,不是自己做的方法,所以太过简单,所用的知识点有限而且单一。希望自己能通过再次学习,在本程序中加入更多的功能,如键盘事件,鼠标事件,添加滚动条和按钮等等。2通过这个设计,我对框架的布局有了进一步的认识,也对内部类监听器有了更深的理解,以前我对对象的传递给方法总是很不懂,通过这次的设计,对有关对象传递的方法有了更深的认识。通过这次的设计,深深

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论