Java SE实验项目3 组件与事件编程(1)

来源:网络收集 时间:2025-06-21 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

Java SE实验项目三 组件与事件编程

第1部分 组件与事件处理(1)

[实验目的]

1、掌握java 图形用户界面设计常用类及其各自重要方法的应用。 2、掌握java 事件处理模式并熟练掌握文本框上事件处理的方法。

[实验要求]

1、 复习理论教学中所学的内容。

2、 认真进行实验预习,查阅参考书,书写源程序,书写实验预习报告。 3、 认真总结实验并书写实验报告。

[实验课时] 2学时

[实验教学方式] 学生上机实验,教师随堂指导。 [实验内容]

1、算术测试:请读懂下面模板程序,将其补充完整并调试运行。 //Teacher.java

public class Teacher { int numberOne,numberTwo; String operator=\ boolean right;

public int giveNumberOne(int n) { numberOne=(int)(Math.random()*n)+1; return numberOne; }

public int giveNumberTwo(int n)

{ numberTwo=(int)(Math.random()*n)+1;

return numberTwo; }

public String giveOperator() { double d=Math.random(); if(d>=0.5) operator=\ else

operator=\

return operator;

}

public boolean getRight(int answer) { if(operator.equals(\

{ if(answer==numberOne+numberTwo)

right=true; else

right=false;

}

else if(operator.equals(\ { if(answer==numberOne-numberTwo) right=true; else

right=false; }

return right;

}

}

//ComputerFrame.java

//MainClass.java

public class MainClass

{ public static void main(String args[]) { ComputerFrame frame;

frame=【代码9】//创建窗口,其标题为:算术测试 } }

2、信号灯:请读懂下面模板程序,将其补充完整并调试运行。 //SignalCanvas.java

import java.awt.*;

public class SignalCanvas extends Canvas { int red,green,yellow,x,y,r; SignalCanvas()

{ setBackground(Color.white); }

public void setRed(int r) { red=r; }

public void setGreen(int g) { green=g; }

public void setYellow(int y) { yellow=y; }

public void setPosition(int x,int y) { this.x=x;

this.y=y; }

public void setRadius(int r) { this.r=r; }

public void paint(Graphics g) { if(red==1)

{ g.setColor(Color.red); }

else if(green==1)

{ g.setColor(Color.green); }

else if(yellow==1)

{ g.setColor(Color.yellow); }

g.fillOval(x,y,2*r,2*r); } }

//SignalFrame.java

import java.awt.*; import java.applet.*; import java.awt.event.*;

public class SignalFrame extends Frame implements ItemListener { Choice choice;

SignalCanvas signal=null;

String itemRed=\红灯\黄灯\绿灯\ public SignalFrame()

{ choice=【代码1】 //创建choice

【代码2】 //创建choice添加itemRed 【代码3】 //创建choice添加itemYellow 【代码4】 //创建choice添加itemGreen 【代码5】 //将当前窗口注册为choice的ItemEvent事件监视器 add(choice,BorderLayout.NORTH);

try{ Class cs=Class.forName(\ signal=(SignalCanvas)cs.newInstance(); add(signal,BorderLayout.CENTER); }

catch(Exception e)

{ add(new Label(\您还没有编写SignalCanvas类\ }

setBounds(100,100,360,300); setVisible(true); validate();

addWindowListener(new WindowAdapter()

{ public void windowClosing(WindowEvent e) { System.exit(0); } } ); }

public void itemStateChanged(ItemEvent e)

{ String item= 【代码6】 // choice返回被选中的条目 int w=signal.getBounds().width; int h=signal.getBounds().height; int m=Math.min(w,h); signal.setRadius(m/6); if(item.equals(itemRed)) { if(signal!=null) { signal.setRed(1); signal.setYellow(0); signal.setGreen(0); signal.setPosition(w/3,0); signal.repaint(); } }

else if(item.equals(itemYellow)) { if(signal!=null) { signal.setRed(0); signal.setYellow(1); signal.setGreen(0);

signal.setPosition(w/3,h/3); signal.repaint(); } }

else if(item.equals(itemGreen)) { if(signal!=null) { signal.setRed(0); signal.setYellow(0); signal.setGreen(1);

signal.setPosition(w/3,2*h/3); signal.repaint(); } } } }

//SignalMainClass.java

public class SignalMainClass

{ public static void main(String args[])

{ SignalFrame frame; frame=new SignalFrame() ; frame.setTitle(\信号灯\ } }

3、布局与日历:请读懂下面模板程序,将其补充完整并调试运行。 //CalendarBean.java

import java.util.Calendar; public class CalendarBean {

String day[]; int year=2005,month=0; public void setYear(int year) { this.year=year; }

public int getYear() { return year; }

public void setMonth(int month) { this.month=month; }

public int getMonth() { return month; }

public String[] getCalendar() { String a[]=new String[42]; Calendar 日历=Calendar.getInstance(); 日历.set(year,month-1,1);

int 星期几=日历.get(Calendar.DAY_OF_WEEK)-1; int day=0;

if(month==1||month==3||month==5||month==7||month==8||month==10||month==12) { day=31; }

if(month==4||month==6||month==9||month==11) { day=30; } if(month==2)

{ if(((year%4==0)&&(year0!=0))||(year@0==0)) { day=29; } else

{ day=28; } }

百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库Java SE实验项目3 组件与事件编程(1)在线全文阅读。

Java SE实验项目3 组件与事件编程(1).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.70edu.com/wenku/296295.html(转载请注明文章来源)
Copyright © 2020-2025 70教育网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备16052595号-17
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219