- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
学生投票软件
Java期末项目论文
项目名称: 学生投票软件
小组成员: AAA
BBB
年级专业: 11级计算机科学与技术
日 期: 2013年12月18日
选题背景
每个合法的成年公民都具有选举权,在人们的日常工作、学习以及生活中,大到领导的选举,小到班级组织的活动,投票这项活动随处可见。在我们大学校园里,每年都要进行三好学生、优秀干部的选举,奖助学金的评选等一系列活动,这些都需要我们学生进行投票。手写的选票不但繁琐、麻烦,还会出现一些不合法的选票,于是我们小组决定制作一个投票、计票软件,方便大家的同时,也提升了该项活动的公平、公正性。
分析过程
本程序主要需要掌握窗口的布局格式和事件触发的相关知识,程序整体采用组合布局的方式,将所有部件添加到面板JPanel上,显示提示信息需要用到是标签Label,按钮用Button来实现,选票需要用Checkbox复选框来实现,选票的计数和显示用到的是设置为不可编辑的文本框TextField,候选人的照片也是通过JLabel来添加的。本程序将整个界面分成若干个小块,每一小块都是一个面板,最后将所有小块拼接起来,为每个小块都设置好布局setLayout,我们在这里主要用到的布局有:流式布局FlowLayout和BoxLayout盒式位布局。
界面创建好了之后,就要实现具体的功能了。本程序的功能主要是通过鼠标触发来实现的,通过对java.awt.event.ActionListener的成员方法actionPerformed的重载来实现。学生每次投票后,通过setEnabled(false)使投票按钮不可编辑,必须点击刷新按钮才能重新投票,这样能够有效地避免一个学生进行多次投票、刷票等不公平现象。而文件的保存这一部分主要是参考教材第七章—文件和数据流的处理 来实现的。
开发过程
在选定了题目之后,我首先分析了程序的编写思路及步骤,首先编写程序界面的相关代码,在实现了界面之后完成每一部分的具体功能。
⑴首先是界面的设计:
定义:JPanel[]p=new JPanel[7],将布局分成了七个不部分,每一个部分设置成需要的布局形式,然后通过p[pj[i]].add()语句为每一部分添加相关的组件,设置相关属性,主要用到的组件有:Dialog、Label、Button、TextField和CheckBox。有关变量的定义如下:
①static JDialog d=new JDialog(); //弹出对话框
②static JButton[] bk={new JButton(投票),new JButton(刷新),new JButton(保存结果)};JCheckBox[] ck={new JCheckBox(陈乔恩),new JCheckBox(蔡依林),new JCheckBox(柯震东)};JTextField[] t={new JTextField(,14),new JTextField(,14),new JTextField(,14),new JTextField(,14)}; //文本框用于显示选票
⑤ImageIcon[] ic={new ImageIcon(0.jpg),new ImageIcon(1.jpg),new ImageIcon(2.jpg),new ImageIcon(3.jpg),new ImageIcon(4.jpg)}; //图片信息
⑵各部分功能的实现:(只列出关键部分)
①查看简介按钮:通过显示对话框的方式来实现候选人的介绍
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JOptionPane.showMessageDialog(null,str1[0],str2[0],JOptionPane.PLAIN_MESSAGE);}
});
②投票按钮:
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
if(ck[0].isSelected()||ck[1].isSelected()||ck[2].isSelected())
count++; //如果由候选人被选,
if(ck[0].isSelected()){
count1++; //1号候选人被选,票数加1
ck[0].setEnabled(true); //设置复选框可以被编辑
您可能关注的文档
最近下载
- 全套IECQQC080000-2017有害物质过程管理体系文件(HSPM).pdf VIP
- 中国东方资产管理股份有限公司招聘笔试题库2025.pdf
- 市场调查与分析: 数据分析网络调查报告撰写 (慕课版)王晓燕习题答案.docx
- 起重装卸机械操作工高级工培训大纲与教学内容概述.docx VIP
- 2025至2030中国中药饮片行业市场发展现状及竞争格局与投资发展报告.docx
- 2025年教科版六年级上册科学第一单元综合检测试卷及答案.pptx VIP
- 《企业质量管控与应用》课件.ppt VIP
- 吊顶施工合同范本.pdf VIP
- 公共建筑室内温度控制管理办法——空调系统节能运行管理制度.doc VIP
- 统编版八年级语文上册课件《诗词五首-渔家傲》.pptx VIP
文档评论(0)