Java图形用户界面编程练习
更新时间:2023-10-14 00:12:01 阅读量: 综合文库 文档下载
实验八 Java图形用户界面编程练习
实验目的
1、 掌握 Java 的 GUI 设计技术 2、 掌握 AWT 和 Swing 的应用技巧
实验要求
1、 编写一个程序学习使用处理ActiongEvent事件 2、 编写一个程序学习使用布局类
实验内容
1. 猜数字游戏
实验目的:练习图形用户界面编程,学习处理ActionEvent事件。
实用要求:
要求程序中要有2个按钮buttonGetNumber和buttonNumber,用户单击buttonGetNumber
按钮可以得到一个随机数,然后在文本框中输入猜测数字,再单击buttonNumber按钮,程序根据用户的猜测给出提示信息。
运行效果示例:
程序模板:按模板要求,将【代码】替换为Java程序代码。 GuessExample.java
import java.awt.*;
import java.awt.event.*; import java.applet.*; public class GuessExample extends Applet implements ActionListener {
int number;
TextField inputNumber; Label feedBack;
Button buttonGetNumber,buttonEnter; public void init() {
buttonGetNumber=new Button(\得到一个随机数\ feedBack=new Label (\无反馈信息\ feedBack.setBackground(Color.green); inputNumber=new TextField(\
buttonEnter=new Button(\确定\
【代码1】 //按钮buttonEnter增加ActionEvent事件监视器,监视器为当前Java Applet。
【代码2】 //按钮buttonGetNumber增加ActionEvent事件监视器,监视器为当前Java Applet。
add(new Label(\获取1-100之间的随机数:\ add(buttonGetNumber);
add(new Label(\输入您的猜测:\ add(inputNumber);
add(new Label(\单击确定按钮:\ add(buttonEnter);
add(new Label(\反馈信息:\ add(feedBack); }
public void actionPerformed(ActionEvent e) {
if(【代码3】) //判断事件源是否是buttonGetNumber。 {
number=(int)(Math.random()*100)+1; }
else if(【代码4】) //判断事件源是否是buttonEnter。 {
int guess=0; try {
guess=Integer.parseInt(【代码5】); //返回inputNumber中的文本。
if(guess==number) {
【代码6】 //feedBack设置提示文本:\猜对了!\。 }
else if(guess>number) {
【代码7】 //feedBack设置提示文本:\猜大了!。 inputNumber.setText(null); }
else if(guess 【代码8】 //feedBack设置提示文本:\猜小了!。 inputNumber.setText(null); } } catch(NumberFormatException event) { 【代码9】 //feedBack设置提示文本:\请输入数字字符\。 } } } } 实验后的练习: 1、 将给上述程序增加记录猜测次数的功能,每次反馈这是第几次猜测,当猜测成功时 反馈一共猜测了几次。 2. 布局和日历 实验目的:学习使用布局类 实用要求: 利用Swing编写一个GUI程序,JFrame使用BorderLayout布局。在JFrame的中心添加一个Panel容器pCenter, pCenter的布局是7行7列的GridLayout布局,pCenter中放置49个标签,用来显示日历。JFrame的北面添加一个Panel容器pNorth,其布局是FlowLayout布局,pNorth放置两个按钮nextMonth和previousMonth,单击nextMonth按钮,可以显示当前月的下一月的日历;单击previousMonth按钮,可以显示当前月的上一月的日历。JFrame的南面添加一个Panel容器pSouth,其布局也是FlowLayout,pSouth中放置一个标签来显示一些日历信息。 运行效果示例: 程序模板:按模板要求,将【代码】替换为Java程序代码。 CalendarExample.java import java.util.*; import java.awt.*; import java.awt.event.*; import java.applet.*; import javax.swing.*; public class CalendarExample extends JFrame implements ActionListener { JLabel a[]=new JLabel[42]; JButton titleName[]=new JButton[7]; String name[]={\星期日\,\星期一\,\星期二\,\星期三 \, \星期四\,\星期五\,\星期六\}; JButton nextMonth,previousMonth; int year=2008,month=1; CalendarBean calendar; JLabel showMessage=new JLabel(\,JLabel.CENTER); public CalendarExample() { 【代码1】 //将Java Applet的布局设置为BorderLayout布局。 JPanel pCenter=new JPanel(); 【代码2】 //将pCenter的布局设置为7行7列的GridLayout 布局。 for(int i=0;i<7;i++) { titleName[i]=new JButton(name[i]); 【代码3】 //向pCenter添加组件titleName[i]。 } for(int i=0;i<42;i++) { a[i]=new JLabel(\,JLabel.CENTER); 【代码4】 //向pCenter添加组件a[i]。
正在阅读:
Java图形用户界面编程练习10-14
MIKE SHE分布式水文模型培训教程06-04
My favourite Festival is Mid08-08
十佳教师代表发言稿06-24
2013最新中考化学模拟试卷及答案05-22
暑期打工社会实践报告03-31
人工智能课后练习题05-12
- 高一物理牛顿运动定律全套学习学案
- 水处理一级反渗透加还原剂亚硫酸氢钠后为什么ORP会升高
- 毕业设计(论文)-正文董家口 - 图文
- 荣盛酒店经营管理公司录用通知及入职承诺书II
- 第二讲 大学英语四级快速阅读技巧
- 质量管理体系文件(2015年委托第三方医药物流配送企业专用版本)
- 214071收款办法
- 苏轼对《文选》选文的评价
- 《诊断学基础B》1-8作业
- 广东省东莞市高一数学下学期期末教学质量检查试题
- 海南电网公司VIS推广应用管理办法
- 红星照耀中国习题
- 苏教版小学语文六年级上册期末复习资料之生字词整理
- 局域网组建与应用—王向东
- 税务稽查内部管理文书样式
- 环保社会实践调查表
- 九年级思品第一单元复习
- 2016年全国注册咨询工程师继续教育公路路线设计规范试卷
- 毕业设计-青岛港董家口港区防波堤设计
- 撞背锻炼方法与益处
- 用户界面
- 图形
- 练习
- 编程
- Java
- 报告--洗瓶机设计确认
- 2018届山西省太原市高三3月模拟考试(一)理综化学试题(解析版)
- 马原自考模拟试卷(附答案)(1)
- 应用写作第2次作业(行政专) - 图文
- 3.西亚与非洲练习题 - 图文
- 为什么大学生要有理想信念,做一个平凡人就是胸无大志 …
- 东南大学电路考研大纲
- 2011年中考考语文试卷分类大汇编:说明文阅读专题(带答案)
- 人民币国际化路径
- 新视野大学英语第二版第一册reading 1-7
- 努力建设“想干事、能干事、干成事”的队伍讲话
- 医案十则
- 护士2012资格考试试题精选
- 外源型与内生型城市发展的特征比较 - 省略 - 实证 - 以苏南小城市宜兴和溧阳为例 - 阮梦乔 - 图文
- 2019-2020学年八年级数学下册 19.3 梯形教案 新人教版 doc
- 第5章 辛亥革命与君主专制制度的终结
- 激发探索欲望与学生创新能力的培养
- 寿县炎刘镇自来水厂二期扩建工程监理规划
- 2013年房产经纪人成功开单的六大技巧每日一讲(12月13日)
- 桂价费55号文