admin管理员组

文章数量:1567541

2024年5月24日发(作者:)

大二java课程设计题目和代码

简单投票管理系统、小学生数学练习题目自动生成系统、华容道-一个传统

的智利游戏、用图形界面实现P208页,过桥问题、编写一个记事本程序、电子

英汉词典、加密与解密、标准化考试系统、排球比赛计分系统、Hannoi塔、学

籍管理系统、制作一个图形编辑系统、图书信息管理系统、ATM柜员机模拟系统、

学生成绩管理信息系统、聊天**、记忆测试系统、超市收银系统、算法演示程序、

网络聊天程序。 1、华容道-一个传统的智利游戏 编写一个按钮的子类,

使用该子类创建的对象代表华容道中的人物。通过焦点事件控制人物颜色,当人

物获得焦点时颜色为蓝色,当失去焦点时颜色为灰色。通过键盘事件和鼠标事件

来实现曹操、关羽等人物的移动。当人物上发生鼠标事件或键盘事件时,如果鼠

标指针的位置是在人物的下方(也就是组件的下半部分)或按下键盘的“↓“键,

该人物向下移动。向左、向右和向上的移动原理类似。 学习要点本程序主

要练习使用布局管理器设计一个华容道游戏界面,并练习使用事件监听器(鼠标

事件、键盘事件和焦点事件)实现按钮的移动。 设计思路首先是界面设计,

该界面主要包括十个人物按钮(马、曹操、关羽等)以及旁边的四个边框按钮和

重新开始按钮。对于人物按钮,我们可以创建Button按钮的子类,在该类中定

义按钮的一些新的属性和焦点事件监听器,如:按钮的标签名、按钮的颜色、按

钮的排号(如这里有十个人物按钮,从1排到十,在程序中可以依靠这个属性区

分人物按钮)、按钮颜色、按钮获得或失去焦点事件。同时在设计该界面时要考

虑到各个按钮的位置、大小等情况。在这给出了各按钮的位置和大小参数:(其

中Person为继承Button按钮的人物按钮类) String name[]={"曹操","关羽","

张","刘","马","许","兵","兵","兵","兵"}; for(int i=0;i<;i++)

{undefined person[i]=new Person(i,name[i]); person[i].addKeyListener(this);

person[i].addMouseListener(this); // person[i].addFocusListener(new Person)

add(person[i]); } nds(104,54,100,100);

nds(104,154,100,50); nds(54,154,50,100);

nds(204,154,50,100); nds(54,54,50,100);

nds(204,54,50,100);

nds(204,254,50,50);

nds(54,254,50,50);

nds(104,204,50,50);

nds(154,204,50,50); 四个边框按钮的位置和大小参数为:

nds(49,49,5,260); nds(254,49,5,260);

nds(49,49,210,5); nds(49,304,210,5); 其次我们

是对界面上的各人物按钮添加相应的相应事件(鼠标事件、键盘事件),通过这

两种事件去完成界面上各人物按钮的移动。对重新开始按钮定义动作事件

(ActionEvent)完成界面初始化功能(也就是各人物按钮重新归位)。 相关学

习资料 该程序主要涉及到鼠标事件和键盘事件及焦点事件三个方面的新知

public void 识。 触发焦点事件 组件可以触发焦点事件。组件可以使用

addFocusListener(FocusListener Listener) 增加焦点事件监视器如:

usListener(事件监听器) 当组件具有焦点监视器后,如果组件从

无输入焦点变成有输入焦点或从有输入焦点到无输入焦点都会触发FocusEvent

事件。创建监视器的类必须要实现FocusListener接口,该接口有两个方法:

public void focusGained(FocusEvent e) //获得焦点触发 public void

focusLost(FocusEvent e) //失去焦点触发 当组件从无输入焦点变成有输入焦点并

触发FocusEvent事件时,监视器调用类实现的接口方法focusGained(FocusEvent e);

当组件从有输入焦点变成无输入焦点并触发FocusEvent事件时,监视器调用类实

现方法focusLost(FocusEvent e)。 方法 public Boolean requestFocusInwindow()

鼠标事件 组方法可以获得输入焦点:如tFocusInwindow()

件是可以触发鼠标事件的事件源。 如:鼠标指针进入组件,退出、停留组件上

方单击鼠标、拖动鼠标、按下、释放、移动。 鼠标事件的类型是MouseEvent,

即组件触发鼠标时,MouseEvent类自动创建一个事件对象。Java分别使用

MouseListener接口与MouseMotionListener接口来处理鼠标事件。MouseListener

接口可以处理5种鼠标事件:单击、按下、释放、进入和退出。MouseMotionListener

接口可以处理2种鼠标事件:拖动、移动。 键盘事件 当按下、释放或敲

击键盘上一个键时就发生了键盘事件,如:当一个组件处于激活状态时(获得焦

点),敲击键盘上一个键就导致了这个组件发生了键盘事件。事件源使用

addKeyListener方法获得监视器。KeyEvent为键盘事件的类型,KeyListener是事

件监视器实现的接口,其中有三种相应事件:按键、释放键、按下和释放的组合

事件。 Public void KeyPressed(KeyEvent e) Public void KeyTyped(KeyEvent e)

Public void KeyReleased(KeyEvent e) 用KeyEvent类的public int getKeycode()

方法和public char getKeychar()判断哪个键被按下、敲击或释放。如: public

void keyPressed(KeyEvent e) {undefined Person man=(Person)rce();//返

回事件源 if(Code()==_DOWN) //判断是否按下了向下箭头

{undefined goDown(man); } if(Code()==_UP) //判断

} 是否按下了向下箭头 {undefined goUp(man);

if(Code()==_LEFT) //判断是否按下了向下箭头

{undefined goLeft(man); } if(Code()==_RIGHT) //判

断是否按下了向下箭头

理系统

{undefined goRight(man); } } 2、简单投票管

设计一个如图1所示的投票管理系统界面,要求输入候选人名单后,

点击确认按钮实现使用选择框代表候选人,计选择框的名字就是候选人的名字。

点击取消按钮候选人输入框为空,重新输入候选人名单。选中候选人的选择框时,

表示给该候选人投一票。点击确定按钮时表示产生一张选票。点击刷新按钮回到

程序的初始界面重新设置候选人。根据选择框的状态变化统计出候选人的最后得

票数,并可按票选取多少点击排序按钮对候选人进行排序。(其中,最多从候选

人中选取3人,如果一张选票选取多于3人,该票就作废票处理。如果一个也没

投票,就作弃权处理。程序能显示一共统计了多少选票,并能统计出废票和弃权

票的票数。

学习要点 本程序主要学习窗口的布局以及按钮事件的触发。

设计思路 定义几个类变量来记录投票相关记录如: Checkbox checkbox[]

TextField personVote[] //文本条数组,显示每个人//选择框数组,代表候选人

的得票情况

int count[] //记录每个人的得票数 int totalVote=0, //总票数

int peopleNumber=0; //候选人个数 int有效人数=3,废票数=0,弃权票数=0;

在输入候选人名单时是输入一串名字,所以要从这一串名字中单个的提取出

来并统计出候选人个数,在完成这项功能时要用到StringTokenizer类。点击确认

按钮后,根据候选人个数添加单选按钮,并以候选人名字作为单选按钮的标签名。

然后通过确定按钮事件分别给以上定义的各变量赋值。把结果显示出来,同时可

以根据peopleNumber的值对各候选人文本框排序,即调整候选人文本框中的内

容。 3、 (1)添加学生成绩 ScoreManager -a学号,姓名,高等数学,大

学英语, Java程序设计,操作系统,体育(需要提示信息是否添加成功) (2)删

除学生成绩 ScoreManager -d学号 (需要提示信息是否删除成功)(3)修改

学生成绩 ScoreManager -m学号姓名=xxx (需要提示信息是否修改成功,并

显示修改后的信息)(4)查找学生成绩 ScoreManager -s学号(显示结果)

学生平均分排序并显示ScoreManager -sort

(5)

本文标签: 事件按钮候选人焦点系统