全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验四 组件及事件处理一实验目的学习处理ActionEvent事件;学习处理ItemEvent事件和paint方法;学习使用布局类。二实验要求实验前,应事先熟悉相关知识点,拟出相应的实验操作步骤,明确实验目的和要求;实验过程中,服从实验指导教师安排,遵守实验室的各项规章制度,爱护实验仪器设备;实验操作完成后,认真书写实验报告,总结实验经验,分析实验过程中出现的问题。三实验内容1、算术测试编写一个算术测试小软件,用来训练小学生的算术能力。程序由3个类组成,其中Teacher类对象负责给出算术题目,并判断回答者的答案是否正确:ComputerFrame类对象负责为算术题目提供视图,比如用户可以通过ComputerFrame类对象提供的GUI界面看到题目,并通过该GUI界面给出题目的答案:MainClass是软件的主类。2、信号灯编写一个带有窗口的应用程序。在窗口的北面添加一个下拉列表,该下拉列表有“红灯”、“绿灯”和“黄灯”三个选项。在窗口的中心添加一个画布,当用户在下拉列表选择某项后,画布上绘制相应的信号灯。3、布局与日历(1)编写一个应用程序,有一个窗口,该窗口为BorderLayout布局。窗口的中心添加一个Panel容器pCenter:pCenter的布局是7行7列的GridLayout布局,pCenter中放置49个标签,用来显示日历。窗口的北面添加一个Panel容器pNorth,其布局是FlowLayout布局,pNorth放置两个:按钮:nextMonth和previousMonth,单击nextMonth按钮,可以显示当前月的下一月的日历;单击previousMonth,可以显示当前月的上一月的日历。窗口的南面添加一个Panel容器pSouth,其布局是FlowLayout布局,pSouth中放置一个标签用来显示一些信息。 (2)请按模板要求,将【代码】替换为Java程序代码。(3)在CalendarFrame类中增加一个TextField文本框,用户可以通过在文本框中输入年份来修改calendar对象的int成员year。CalendarBean.javaimport 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 String42; 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)&(year%100!=0)|(year%400=0) day=29; else day=28; for(int i=星期几,n=1;i星期几+day;i+) ai=String.valueOf(n) ; n+; return a; CalendarFrame.javaimport java.util.*;import java.awt.*;import java.awt.event.*;import java.applet.*;public class CalendarFrame extends Frame implements ActionListener Label labelDay=new Label42; Button titleName=new Button7; String name=日,一,二,三, 四,五,六; Button nextMonth,previousMonth; int year=2006,month=10; CalendarBean calendar; Label showMessage=new Label(,Label.CENTER); public CalendarFrame() Panel pCenter=new Panel(); 【代码1】 /将pCenter的布局设置为7行7列的GridLayout 布局。 for(int i=0;i7;i+) titleNamei=new Button(namei); 【代码2】/pCenter添加组件titleNamei。 for(int i=0;i42;i+) labelDayi=new Label(,Label.CENTER); 【代码3】/pCenter添加组件labelDayi。 calendar=new CalendarBean(); calendar.setYear(year); calendar.setMonth(month); String day=calendar.getCalendar(); for(int i=0;i12) month=1; calendar.setMonth(month); String day=calendar.getCalendar(); for(int i=0;i42;i+) labelDayi.setText(dayi); else if(e.getSource()=previousMonth) month=month-1; if(month1) month=12; calendar.setMonth(month); String day=calendar.getCalendar(); for(int i=0;i42;i+) labelDayi.setText(dayi); showMessage.setText(日历:+calendar.getYear()+年+calendar.getMonth()+月 ); CalendarMainClass.javapublic class CalendarMainClass public static void main(String args) CalendarFrame frame=new CalendarFrame(); frame.setBounds(100,100,360,300); frame.setVisible(true); f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 缝纫工QC考核试卷含答案
- 锅炉大件热处理工安全生产基础知识能力考核试卷含答案
- 2026年新科教版初中七年级科学下册第一单元植物生殖生长过程卷含答案
- 丙烯酸及酯装置操作工安全生产基础知识考核试卷含答案
- 叉车司机创新应用考核试卷含答案
- 2026年新科教版初中八年级语文下册第一单元议论文论点论据分析卷含答案
- 数控型材专用切割机操作工安全宣传水平考核试卷含答案
- 口腔护理液制造工岗前进度管理考核试卷含答案
- 重冶备料破碎工操作知识水平考核试卷含答案
- 饰面板组坯及预压工安全生产意识强化考核试卷含答案
- 媒体创意经济:玩转互联网时代学习通超星期末考试答案章节答案2024年
- 陕西省汉中市2023-2024学年八年级上学期联考数学试题
- 城市规划设计计费指导意见(2004年)
- 天然淡水珍珠科普知识讲座
- 北京玉渊潭中学新初一均衡分班语文试卷
- 喷砂除锈作业指导书
- 统计大数据文化-南京财经大学中国大学mooc课后章节答案期末考试题库2023年
- GSTGM9000图形显示装置软件用户手册
- 2023年同等学力申硕经济学综合历年真题及答案
- -卫生资格-副高-疾病控制-副高-章节练习-慢性非传染性疾病控制-试题(单选题)(共1125题)
- GB/T 41501-2022纤维增强塑料复合材料双梁法测定层间剪切强度和模量
评论
0/150
提交评论