java实验课程教学大纲-孙晶京(8)

2019-03-03 16:50

else if(str.equals(\

String answer=textResult.getText(); try{ int result=Integer.parseInt(answer); if(operator.equals(\

if(result==numberOne+numberTwo) message.setText(\你回答正确\ else

message.setText(\你回答错误\ }

else if(operator.equals(\

if(result==numberOne-numberTwo) message.setText(\你回答正确\ else

message.setText(\你回答错误\ } }

catch(NumberFormatException ex) { message.setText(\请输入数字字符\ } } }

public void setJTextField(JTextField ... t) { textOne=t[0]; textTwo=t[1]; textResult=t[2]; }

public void setJLabel(JLabel ...label) { operatorLabel=label[0]; message=label[1]; } }

实验内容要求:将【代码】部分替换为java程序代码。

实验报告要求:要有实验名称,实验目的,实验要求,实验内容(源代码),运行结果和总结。

实验2布局与日历

实验教学目标: 掌握使用布局类。 实验场地或主要设备与器材:计算机

实验要求: 编写一个程序,有一个窗口,该窗口的布局为BorderLayOut布局。窗口的中心添加一个JPanel容器pCenter,pCenter的布局设置为7行7列的GridLayout 布局,pCenter中放置49个标签用来显示日历。窗口的北面添加一个JPanel容器pNorth,其布局为FlowLayOut布局,pNorth放置两个按钮,nextMonth和 previousMonth,单击nextMonth显示当前月的下一个月,单击previousMonth显示当前月的上一个月。窗口的南面添加一个JPanel容器pSouth,其布局为FlowLayOut布局,pSouth中放置一个标签用来显示一些信息。

实验内容: CalendarMainClass.java

public class CalendarMainClass { public static void main(String args[]) {

CalendarFrame frame=new CalendarFrame(); frame.setBounds(100,100,360,300); frame.setVisible(true);

frame.setYearAndMonth(2015,5); } }

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; }

for(int i=星期几,n=1;i<星期几+day;i++) { a[i]=String.valueOf(n) ; n++; } return a; } }

CalendarFrame.java

import java.util.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*;

public class CalendarFrame extends JFrame implements ActionListener { JLabel labelDay[]=new JLabel[42]; JButton titleName[]=new JButton[7];

String name[]={\日\一\二\三\四\五\六\ JButton nextMonth,previousMonth; CalendarBean calendar;

JLabel showMessage=new JLabel(\ int year=2011,month=2; public CalendarFrame() { JPanel pCenter=new JPanel();

pCentersetLayout(new GridLayout(7,7)); //将pCenter的布局设置为7行7列的GridLayout 布局。

for(int i=0;i<7;i++) {

titleName[i]=new JButton(name[i]);

titleName[i].setBorder(new SoftBevelBorder(BevelBorder.RAISED)); pCenter.add(titleName[i]); }

for(int i=0;i<42;i++) {

labelDay[i]=new JLabel(\

labelDay[i].setBorder(new SoftBevelBorder(BevelBorder.LOWERED)); 【代码2】//pCenter添加组件labelDay[i]。 }

calendar=new CalendarBean(); nextMonth=new JButton(\下月\ previousMonth=new JButton(\上月\ nextMonth.addActionListener(this); previousMonth.addActionListener(this); JPanel pNorth=new JPanel(), pSouth=new JPanel(); pNorth.add(previousMonth); pNorth.add(nextMonth); pSouth.add(showMessage);

add(pCenter,BorderLayout.CENTER); 【代码3】 // 窗口添加pNorth 在北面区域 【代码4】 // 窗口添加pSouth 在南区域。 setYearAndMonth(year,month);

setDefaultCloseOperation(DISPOSE_ON_CLOSE); }

public void setYearAndMonth(int y,int m) { calendar.setYear(y); calendar.setMonth(m);

String day[]=calendar.getCalendar(); for(int i=0;i<42;i++)

labelDay[i].setText(day[i]);

showMessage.setText(\日历:\年\月\ }

public void actionPerformed(ActionEvent e) { if(e.getSource()==nextMonth) { month=month+1; if(month>12) month=1;

calendar.setMonth(month); String day[]=calendar.getCalendar(); for(int i=0;i<42;i++) { labelDay[i].setText(day[i]); } }

else if(e.getSource()==previousMonth) { month=month-1; if(month<1) month=12;

calendar.setMonth(month); String day[]=calendar.getCalendar(); for(int i=0;i<42;i++)

labelDay[i].setText(day[i]); }

showMessage.setText(\日历:\年\月\ } }

实验内容要求:将【代码】部分替换为java程序代码。

实验报告要求:要有实验名称,实验目的,实验要求,实验内容(源代码),运行结果和总结。

实验3华容道

实验教学目标: 学习焦点、鼠标和键盘事件。 实验场地或主要设备与器材:计算机

实验要求: 编写GUI程序,用户通过键盘和鼠标事件来实现曹操和光羽等人物的移动。

实验内容: MainClass.java

public class MainClass {

public static void main(String args[]) { new Hua_Rong_Road(); } }

Hua_Rong_Road.java

import java.awt.*; import javax.swing.*; import java.awt.event.*;

public class Hua_Rong_Road extends JFrame implements MouseListener,KeyListener,ActionListener {

Person person[]=new Person[10]; JButton left,right,above,below; JButton restart=new JButton(\重新开始\ public Hua_Rong_Road() { init();

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setBounds(100,100,320,500); setVisible(true); validate(); }

public void init() { setLayout(null); add(restart);

restart.setBounds(100,320,120,35); restart.addActionListener(this);

String name[]={\曹操\关羽\张\刘\周\黄\兵\兵\兵\兵\ for(int k=0;k

person[0].setBounds(104,54,100,100); person[1].setBounds(104,154,100,50); person[2].setBounds(54, 154,50,100); person[3].setBounds(204,154,50,100); person[4].setBounds(54, 54, 50,100); person[5].setBounds(204, 54, 50,100); person[6].setBounds(54,254,50,50); person[7].setBounds(204,254,50,50); person[8].setBounds(104,204,50,50); person[9].setBounds(154,204,50,50); person[9].requestFocus(); left=new JButton(); right=new JButton(); above=new JButton(); below=new JButton(); add(left); add(right); add(above); add(below);

left.setBounds(49,49,5,260); right.setBounds(254,49,5,260); above.setBounds(49,49,210,5); below.setBounds(49,304,210,5); validate(); }

public void keyTyped(KeyEvent e){} public void keyReleased(KeyEvent e){}


java实验课程教学大纲-孙晶京(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:青岛版科学六年级上册基础训练答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: