当前位置:文档之家› java图形界面之电子算盘

java图形界面之电子算盘

java图形界面之电子算盘
java图形界面之电子算盘

Java图形用户界面

院系: 计算机系姓名:后人好乘凉

一实验目的

●使学生综合运用图形用户界面设计的概念;

●使学生熟悉使用中间面板,组成层次复杂的GUI界面;

●使学生掌握使用事件驱动编程;

二实验环境及实验准备

●所需硬件环境为微机;

●所需软件环境为JDK、Eclipse;

●掌握Java下界面容器与基本组件的基本知识与应用;

●掌握Java下事件处理模型;

●掌握Java下图形绘制的方法;

三实验内容

(一)、设计实现电子算盘,并完成测试;

[题目描述及要求] 给小朋友设计一个电子算盘。要求绘制电子算盘界面,设计并实现打珠算过程(界面参考如下图示)。

电子算盘参考界面示意

程序源代码:

package calculator;

import java、awt、Color; //导入

import java、awt、GridLayout;

import java、awt、Container;

import javax、swing、JLabel;

import javax、swing、JButton;

import javax、swing、ImageIcon;

import javax、swing、JPanel;

import javax、swing、JFrame;

import javax、swing、JTextField;

import java、awt、event、*;

public class Calculator extends JFrame{

public int totalNumber;

public int t = 0;

public boolean[] isAddFive = new boolean[5];

public int number[] = new int[5];

public ImageIcon picture = new ImageIcon(System、getProperty("user、

dir") + "/算珠、jpg" ); //添加图片

public ImageIcon picture1= new ImageIcon(System、getProperty("user、

dir") + "/算珠1、jpg" );

Container con = getContentPane();

JPanel j1 = new JPanel();

JPanel j2 = new JPanel();

JPanel j3 = new JPanel();

JPanel time=new JPanel();

JLabel q = new JLabel();

JLabel nA = new JLabel();

JLabel Time=new JLabel(new ImageIcon("、/时钟、jpg")); //添加时钟标签的图片

JTextField a = new JTextField();

JButton Buttons_1[][] = new JButton[2][5];

JButton Buttons_2[][] = new JButton[5][5];

GridLayout gl_1 = new GridLayout(2,5);

GridLayout gl_2 = new GridLayout(5,5);

GridLayout gl_3 =new GridLayout();

public Calculator()

{

super("电子算盘");

setDefaultCloseOperation(JFrame、EXIT_ON_CLOSE);

setBounds(100,100,600,400);

setVisible(true);

setLayout(null);

AbacusPanel();

}

public void AbacusPanel() // 算盘面板

{

j1、setLayout(null);

j1、setBounds(15,60,400,300);

j1、setBackground(Color、blue);

con、add(j1);

JPanel j2 = new JPanel();

j2、setLayout(gl_1);

j2、setBounds(10, 10, 380, 80);

j1、add(j2);

JPanel j3 = new JPanel();

j3、setLayout(gl_2);

j3、setBounds(10, 100, 380, 190);

j1、add(j3);

time、setLayout(gl_3);

time、setBounds(430,220,130,130); //时钟面板大小

time、setBackground(Color、white); //时钟面板颜色

time、add(Time);

//添加时钟标签

con、add(time);

for(int i = 0;i < 2;i++)

{

for(int j = 0;j < 5;j++)

{

Buttons_1[i][j] = new JButton("");

Buttons_1[i][j]、addActionListener(new ClickIt());

Buttons_1[i][j]、setBorderPainted(false);

Buttons_1[i][j]、setContentAreaFilled(false);

if(i != 1)

Buttons_1[i][j]、setIcon(picture1);

j2、add(Buttons_1[i][j]);

}

}

for(int i = 0;i < 5;i++)

{

for(int j = 0;j < 5;j++)

{

Buttons_2[i][j] = new JButton("");

Buttons_2[i][j]、addActionListener(new ClickIt());

Buttons_2[i][j]、setBorderPainted(false);

Buttons_2[i][j]、setContentAreaFilled(false);

if(i != 0)

Buttons_2[i][j]、setIcon(picture);

j3、add(Buttons_2[i][j]);

}

}

}

private void addTotalNumber() // 计算算盘的结果

{

for(int j = 0;j < 5;j++)

{

if(isAddFive[j] == true && number[j] <5)

number[j] = number[j] + 5;

else

if(isAddFive[j] == false && number[j] >= 5)

number[j] = number[j] - 5;

}

totalNumber = 0;

for(int j = 0;j < 5;j++)

{

totalNumber = totalNumber + number[j] * (int)Math、

pow(10,(double)j);

}

System、out、println(totalNumber);

}

private void DrawCol(int j) // 绘制j列算珠

{

for(int i = 1; i <=4;i++)

{

B uttons_2[i][j]、setIcon(picture);

}

}

class ClickIt implements ActionListener // 单击事件监听器 {

public void actionPerformed(ActionEvent e)

{

for(int i = 0;i < 2;i++)

for(int j = 0;j < 5;j++)

if(e、getSource() == Buttons_1[i][j])

{

if(i == 1)

{

isAddFive[5-j-1] = false;

Buttons_1[0][j]、setIcon(picture1);

Buttons_1[1][j]、setIcon(null);

}

else

java图形界面之电子算盘

Java图形用户界面 院系: 计算机系姓名:后人好乘凉 一实验目的 ●使学生综合运用图形用户界面设计的概念; ●使学生熟悉使用中间面板,组成层次复杂的GUI界面; ●使学生掌握使用事件驱动编程; 二实验环境及实验准备 ●所需硬件环境为微机; ●所需软件环境为JDK、Eclipse; ●掌握Java下界面容器与基本组件的基本知识与应用; ●掌握Java下事件处理模型; ●掌握Java下图形绘制的方法; 三实验内容 (一)、设计实现电子算盘,并完成测试; [题目描述及要求] 给小朋友设计一个电子算盘。要求绘制电子算盘界面,设计并实现打珠算过程(界面参考如下图示)。 电子算盘参考界面示意 程序源代码: package calculator;

import java、awt、Color; //导入 import java、awt、GridLayout; import java、awt、Container; import javax、swing、JLabel; import javax、swing、JButton; import javax、swing、ImageIcon; import javax、swing、JPanel; import javax、swing、JFrame; import javax、swing、JTextField; import java、awt、event、*; public class Calculator extends JFrame{ public int totalNumber; public int t = 0; public boolean[] isAddFive = new boolean[5]; public int number[] = new int[5]; public ImageIcon picture = new ImageIcon(System、getProperty("user、 dir") + "/算珠、jpg" ); //添加图片 public ImageIcon picture1= new ImageIcon(System、getProperty("user、 dir") + "/算珠1、jpg" ); Container con = getContentPane(); JPanel j1 = new JPanel(); JPanel j2 = new JPanel(); JPanel j3 = new JPanel(); JPanel time=new JPanel(); JLabel q = new JLabel(); JLabel nA = new JLabel(); JLabel Time=new JLabel(new ImageIcon("、/时钟、jpg")); //添加时钟标签的图片 JTextField a = new JTextField(); JButton Buttons_1[][] = new JButton[2][5]; JButton Buttons_2[][] = new JButton[5][5]; GridLayout gl_1 = new GridLayout(2,5); GridLayout gl_2 = new GridLayout(5,5); GridLayout gl_3 =new GridLayout(); public Calculator() { super("电子算盘"); setDefaultCloseOperation(JFrame、EXIT_ON_CLOSE); setBounds(100,100,600,400); setVisible(true); setLayout(null); AbacusPanel(); } public void AbacusPanel() // 算盘面板

java经典的小程序详尽代码

1,编写程序,判断给定的某个年份是否是闰年。 闰年的判断规则如下: (1)若某个年份能被4整除但不能被100整除,则是闰年。 (2)若某个年份能被400整除,则也是闰年。 import Bissextile{ public static void main(String[] arge){ "请输入年份"); int year; .....+aaaaaaaaa=? 其中a为1至9之中的一个数,项数也要可以指定。 import Multinomial{ public static void main(String[] args){ int a; ...前20项之和? class Sum{ public static void main(Sting[] args){ double sum=0; double fenZi=, fenMu=; ..... 打印出第一个大于小于的值 class Pi { public static void main(String[] args){ double pi =0; .. fenMu += ; .. 每项递加2 } } } 输出结果为pi = ,应该不精确 12、输入一个数据n,计算斐波那契数列(Fibonacci)的第n个值 1 1 2 3 5 8 13 21 34 规律:一个数等于前两个数之和 ....的值。 a,求出前50项和值。 b,求出最后一项绝对值小于1e-5的和值。 15、在屏幕上打印出n行的金字塔图案,如,若n=5,则图案如下: * ***

***** ******* ********* 定义一个int型的一维数组,包含10个元素,分别赋一些随机整数,然后求出所有元素的最大值,最小值,平均值,和值,并输出出来。 class ArrayNumber{ public static void main(String[] args){ int[] arrayNumber; arrayNumber = new int[10]; "以下是随机的10个整数:"); 义一个int型的一维数组,包含10个元素,分别赋值为1~10,然后将数组中的元素都向前移一个位置, 即,a[0]=a[1],a[1]=a[2],…最后一个元素的值是原来第一个元素的值,然后输出这个数组。 3. 定义一个int型的一维数组,包含40个元素,用来存储每个学员的成绩,循环产生40个0~100之间的随机整数, 将它们存储到一维数组中,然后统计成绩低于平均分的学员的人数,并输出出来。 4. (选做)承上题,将这40个成绩按照从高到低的顺序输出出来。 5,(选做)编写程序,将一个数组中的元素倒排过来。例如原数组为1,2,3,4,5;则倒排后数组中的值 为5,4,3,2,1。 6,要求定义一个int型数组a,包含100个元素,保存100个随机的4位数。再定义一个 int型数组b,包含10个元素。统计a数组中的元素对10求余等于0的个数,保存到b[0]中;对10求余等于1的个数,保存到b[1]中,……依此类推。 class Remain{ public static void main( String[] args){ int[] a = new int[100]; 约梭芬杀人法 把犯人围成一圈,每次从固定位置开始算起,杀掉第7个人,直到剩下最后一个。 11_2、用数组实现约瑟夫出圈问题。 n个人排成一圈,从第一个人开始报数,从1开始报,报到m 的人出圈,剩下的人继续开始从1报数,直到所有的人都出圈为止。对于给定的n,m,求出所有人的出圈顺序。 12. 判断随机整数是否是素数 产生100个0-999之间的随机整数,然后判断这100个随机整数哪些是素数,哪些不是? public class PrimeTest{ public static void main(String args[]){ for(int i=0;i<100;i++){

java图形界面以及链接数据库

import java、awt、*; import java、awt、event、*; import javax、swing、*; import java、sql、*; public class NoteTextArea extends JFrame implements ActionListener { private JPanel jp=new JPanel(); private JButton[] jb = new JButton[4]; private JComboBox box; private JTextArea jt=new JTextArea(); private JScrollPane js=new JScrollPane(jt,ScrollPaneConstants、VERTICAL_SCROLLBAR_ALWAYS,ScrollPaneConstants、HORIZONTAL_SCROLLBAR_NEVER); private String[] obj; private JTextField text = new JTextField(); public NoteTextArea() { jp、setLayout(null); String[] obj = new String[]{"微笑","生气","难过","得意"}; box = new JComboBox(obj); JLabel j1 = new JLabel("留言版"); JLabel j2 = new JLabel("您"); JLabel j3 = new JLabel("地说:"); jb[0] = new JButton("清屏"); jb[1] = new JButton("至顶"); jb[2] = new JButton("至尾"); jb[3] = new JButton("提交"); for(int i = 0;i < 3;i++) { jb[i]、setBounds(650,i*75+55,100,50); } for(int i = 0;i < 3;i++) { jp、add(jb[i]); } j1、setBounds(280,10,50,30); j2、setBounds(20,375,30,50); box、setBounds(55,385,80,30); j3、setBounds(160,375,40,50); text、setBounds(210,385,300,30); jb[3]、setBounds(520,365,75,50); js、setBounds(10,50,600,300); jp、add(j1); jp、add(j2);

java图形化界面练习及答案

作业标题:第四次练习题(总分:得分:分)一、单选题(共有题目15题,共计分) 1. 下列属于容器的组件有 A. JButton B. JPane C. Canvas D. JTextArea 学生的答案: B 标准答案: B 该题分数: 学生得分: 分 2. 下列方法中,不属于WindowListener接口的是A. windowOpened() B.

windowClosed() C. windowActivated() D. windowAdapter 学生的答案: D 标准答案: D 该题分数: 学生得分: 分 3. 下列不属于Swing中组件的是( )。 A. JPanel B. JTable C. Menu D. JFrame 学生的答案: C 标准答案: C 该题分数:

学生得分: 分 4. 以下Swing组件中哪一个不是顶层容器组件( )。 A. 框架 B. 对话框 C. 面板 D. 小程序 学生的答案: C 标准答案: A 该题分数: 学生得分: 0分 5. 对于Swing基本控件单选框,若要使两个单选框对象之间具有相互排斥的关系,需要( )。 A. 创建两个单选框对象时定义相同的对象名 B. 将两个单选框对象放在同一个面板上

定义一个ButtonGroup对象group,将两个单选框对象加到group中D. 让两个单选框排成一行或一列 学生的答案: C 标准答案: C 该题分数: 学生得分: 分 6. 容器被重新设置大小后,( )布局管理器的容器中的组件大小不随容器大小的变化而改变。 A. CardLayout B. FlowLayout C. BorderLayout D. GridLayout 学生的答案: B 标准答案: B 该题分数: 学生得分: 分

Java编写的扫雷小程序

J a v a编写的扫雷小程序Prepared on 21 November 2021

整个程序使用了4个类: Game 用于启动程序, 界面的布置,各种行列的算法。 ExtendButton 继承了Jbutton 用于新建button的各种属性 ShowNum 监听到某个button后,计算出此button周围有几个雷,不同的雷对应不通的图片,类得到button上应加载的图片地址 ViewReSet 此类用于新建一个窗口,用户输入自己想要的行、列、雷数,然后用新的行列雷数new 一个新的Game biaose dise1 dise2 dise3 dise4 dise5 dise6 dise7 dise8 dise lei biaoji

/**************************************************************** 运行类创建游戏主窗体 */ package class Game extends JFrame implements ActionListener{ private Container myContainer; private GridLayout myLayout; private JPanel myPanelMain; private JPanel myPanel; private JToolBar myTool; private JLabel time; private JLabel labelTime; private JLabel bombNum; private JLabel labelBombNum; private JMenuBar menuBar; private JMenu menuE, menuH; private JMenuItem menuItemCZ, menuItemSZ; private int numBomb, countTime, leaveBomb, numEnd; private int myRows, myColumns; private int xis, yis; private Timer timer; private ExtendButton[] myButton = null; etPostion(i); [i].setIcon((new ShowNum(10)).getImageIcon()); [i].setButton_num(0); [i].SetVisited(false); [i].SetStatus(false); ddMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent evt) { if (() == ) {

java实验报告实验六Java图形用户界面

信息工程学院 Java程序设计实习报告 JAVA图形用户界面 实验六Java图形用户界面 1.实验目的 (1)掌握图形用户界面基本组件。 (2)了解如何使用布局管理器对组件进行管理。 (3)掌握Java事件处理机制。 2.实验内容 实验题 1 编写一个模拟计算器的程序,使用面板与网格布局,添加一个文本框,10个数字按钮(0-9),4个加减乘除按钮,一个等号按钮,一个清除按钮,要求将计算公式与结果显示在文本框中。 运行结果: 实验报告的内容与格式按任课教师的要求书写。

加法: 主要代码: private void initComponents() { jButton1 = new javax、swing、JButton(); jButton2 = new javax、swing、JButton(); jButton3 = new javax、swing、JButton(); jButton4 = new javax、swing、JButton(); jButton5 = new javax、swing、JButton(); jButton6 = new javax、swing、JButton(); jButton7 = new javax、swing、JButton(); jButton8 = new javax、swing、JButton(); jButton9 = new javax、swing、JButton(); jButton10 = new javax、swing、JButton(); jButton11 = new javax、swing、JButton(); jButton12 = new javax、swing、JButton(); jButton13 = new javax、swing、JButton(); jButton14 = new javax、swing、JButton(); jButton15 = new javax、swing、JButton(); jTextField1 = new javax、swing、JTextField(); setStub(null); jButton1、setText("3"); jButton1、addActionListener(new java、awt、event、

java课程设计聊天小程序

java课程设计聊天小程序

课程设计指导书 姓名学 号 班 级 一 班 课程名称Java课程设计课程性质 设计时间2010年11月4日——2010年12月31日设计名称聊天小程序 设计目的本次课程设计是对前面学过的面向对象的编程思想以及编程方法的一个总结、回顾和实践。开始设计前学生一定要先回顾以前所学的内容,明确本次设计所要用到的技术点并到网上搜索以及查阅相关的书籍来搜集资料。通过编写一个基于JA V A的应用系统综合实例,来掌握Java语言编程技巧。 设计要求1、使用图形用户界面。 2、能实现一个聊天室中多人聊天。 3、可以两人私聊。

计划与进度计划在两个月内完成任务,首先在前半个月内(11月4日--11月19日),构思通过网上(图书馆)的知识与课本上的相关内容的了解与认识,确认好选择的课题与怎样设计,基本的思路想好。十五天(11月19日--12月5日)内参考资料争取完成服务端的程序,在12月5日--12月20日完成客户端的程序设计,在12月20日—12月30日内完成实现报告的填写工作。在12月31日全面完成整个课题,并上交给老师。 任课教师意见备注

课程设计报告 课程: 学号: 姓名: 班级 教师: 时间

计算机科学与技术 设计名称:聊天小程序日期:2010 年 11月 4 日 设计内容:设计一个在图形界面下,实现一个聊天室中多人聊天,也可以私聊的聊天小程序 设计目的与要求:目的是为了更好的掌握java 这门课程的内容,同时更好的理解与掌握socket 编程,对所有面向对象的编程思想以及编程方法的一个总结、回顾和实践,掌握Java语言编程技巧。要求使用图形用户界面。能实现一个聊天室中多人聊天。可以两人私聊。(提示:使用socket通信)程序描述清晰准确,思路清晰,程序能够实现相应的功能。

java课程设计报告_简单图形界面计算器的设计

Java 课程设计 简单图形界面计算器的设计 课程名称 Java程序设计 选题名称简单图形界面计算器的设计 专业 班级 姓名 学号 指导教师 简单图形界面计算器的设计

一、设计任务与目标 本次java程序设计我的设计任务是设计一个图形界面(GUI)的计算器应用程序并且能够完成简单的算术运算。本次任务的基本要求是这个计算器应用程序可以完成十进制的加、减、乘、除、求倒、取余、开方运算,且有小数点、正负号、退格和清零功能。而我要在此基础上添加一项千位符分隔符的功能,即以三位为一级,在输入的一串数字中每三位加入一个逗号,这项功能国际通用,并已经成为惯例,会计记账都用这种方法便于账目核算与管理。 GUI计算器设计的具体目标: 1.完成十进制的加、减、乘、除、求倒、取余和开方运算; 2.有小数点和正负号加入运算; 3.有退格、复位和清零的功能; 4.有千位符分隔符的功能,即在输入的一串数字中每三位加入一个逗号。 二、方案设计与论证 1.设计目标的总体分析 (1)设计目标的需求分析:计算器是现在一个普遍应用的工具,能够解决许多人工所无法计算的数据,节省大量宝贵的时间。 (2)设计目标的功能分析:实现计算器系统的功能,主要有两个功能模块:输入和输出。 (3)设计原则:基于计算器系统要具有适用性广、操作简便等特点,本系统预计要达到以下几个目标:①满足以上的基本功能要求;②能够在常见的计算机及其操作系统上运行。 2.设计的基本思路 利用GUI的界面设计,将整个大设计分为三块,分别是数据的输入,运算符

功能符的控制和数据的输入输出显示。利用Swing控件,数据的输入由0~9这10个按钮来表示,用“+”、“-”、“*”、“/”、“1/x”、“%”、“sqrt”这7个按钮来表示加、减、乘、除、求倒、取余、开方运算,用“.”和“±”这2个按钮来表示小数点和正负号,用“Back”、“CE”和“C”这3个按钮来表示退格、复位和清零的功能,数据的输入输出显示由文本字段来表示。将计算器的总体界面设计好后,再将代码分别写入不同的按钮的源程序中。 我要完成的一项改进,即添加一个拥有千位符分隔符功能的按钮,按下这个按钮能够在输入的一串数字中每三位加入一个逗号并且显示出来。我要在之前的界面设计的基础上多添加一个按钮“$”来表示千位符分隔符,并且将功能代码写入这个按钮的源程序中。 三、程序流程图,程序清单与调用关系 1. 程序流程图:

java 第一次作业 一些小程序编写题目

第1 、2章 【程序1】 判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 【程序2】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如: 153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 【程序3】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 【程序4】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。 【程序5】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 【程序6】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 1.程序分析:利用while语句,条件为输入的字符不为'\n'. 【程序7】 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。 【程序8】 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? 【程序9】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。

java小程序设计

课程设计报告 设计题目:用Java编的计算器 院系 班级 设计者 学号 指导教师 设计时间

前言: 通过上课学习了java程序设计的基本原理和模式,这次又以java语言为基本结合其图形应用界面来设计一个包括加、减、乘、除。还有带括号以及带负号、小数运算的计算程序。 系统功能和使用说明: 一.硬件环境: 本系统适用于现应用各种类型的计算机,内存容量为128MB以上,不必配备的外部附加设备。二.软件环境: 本系统的设计采用的是JAVA语言,应在JDK 5.0或者其更高版软件环境下本使用。 三.系统流程图: 1.下图是本程序的运行后的界面,其标注是此组件在程序中的名字 2.系统流程图中各个模块的功能说明: 本程序一共包括:构造方法A5i13w(),setup(), windowClosing(), actionPerformed(), appendchar(), countall(), counting(), Iscountnum()和一个windowcloser类。 (1). A5i13w()是构造方法,在程序创建其对象时就调用,初始化次程序的事件的监听机制。 (2). setup()是我定义的方法,是用来初始化程序的图形应用界面,由A5i13w()来调用。 (3). windowClosing()是用来响应用户的关闭功能。 (4). actionPerformed()是用来处理每个事件的响应的方法 (5). appendchar()方法的作用是在用户产生事件后向Textshow追加产生此事件的字符串 (6).countall()的意义是在用户按“=”号后,从最里层括号向最外层逐层把括号里的内容传递给counting()方法,并负责对括号本身是否符合数学语法要求进行检验。 (7).counting()方法的作用是首先对无括号的数学表达式有关的数学计算符号进行调整,并检验所有的数学符号,如发现错误的数学符号立即在Labelnow中显示出来。

java图形界面以及链接数据库

import .*; import .*; import .*; public class NoteTextArea extends JFrame implements ActionListener { private JPanel jp=new JPanel(); private JButton[] jb = new JButton[4]; private JComboBox box; private JTextArea jt=new JTextArea(); private JScrollPane js=new JScrollPane(jt,,; private String[] obj; private JTextField text = new JTextField(); public NoteTextArea() { (null); String[] obj = new String[]{"微笑","生气","难过","得意"}; box = new JComboBox(obj); JLabel j1 = new JLabel("留言版"); JLabel j2 = new JLabel("你"); JLabel j3 = new JLabel("地说:"); jb[0] = new JButton("清屏"); jb[1] = new JButton("至顶"); jb[2] = new JButton("至尾"); jb[3] = new JButton("提交"); for(int i = 0;i < 3;i++) {

jb[i].setBounds(650,i*75+55,100,50); } for(int i = 0;i < 3;i++) { (jb[i]); } (280,10,50,30); (20,375,30,50); (55,385,80,30); (160,375,40,50); (210,385,300,30); jb[3].setBounds(520,365,75,50); (10,50,600,300); (j1); (j2); (j3); (box); (text); (jb[3]); (js); for(int i=0;i<=3;i++) { jb[i].addActionListener(this); } (false); (true); ("留言内容:");

实现屏幕截图的小程序java课程设计

经济与管理学院信息管理与信息系统专业 《java实验周》报告 (20132016学年第一学期) 学生姓名: 学生班级: 学生学号: 指导教师: 2015年12月25日

实现屏幕截图的小程序

、实验题目 实现屏幕截图的小程序 、实验要求 编程一个应用小程序,能够具有屏幕截图的功能,截图的具体实现有(1)显示出工作区域,即能够截屏的面积; (2)鼠标可以随意滑动进行截图; (3)将所截取的图片保存在想要保存的位置; (4)程序结束后可以退出整个应用。 三、程序流程 图3.1业务流程图

四、技术原理 程序的主类是cutScreen,继承自无边框的框架JWindow;cutScreen()是一个定义屏幕尺寸的构造方法;使用方法mousePressed(MouseEvent咪监听当前鼠标点击的动作;用方法mouseReleased(MouseEve nt e)监听鼠标松开时,显示操作窗口;方法mouseDragged(MouseEve nt e)监听拖动鼠标;pai nt(Graphics g)画出指定的工作区域;savelmage(保存图像。 工具栏ToolsWindow类,继承自有边框的框架JFrame方法init ()用来设置布局方式为BorderLayout; run()捕捉屏幕截图。 五、附实验代码 import java.awt.*; import java.awt.event.*; import java.awt.image.Bufferedlmage; import java.awt.image.RescaleOp; import java.io.File; import java.io.lOException; import java.text.SimpleDateFormat; import java.util.Date; import javax.imageio.lmagelO; import javax.swing.*; import javax.swing.filechooser.FileNameExtensionFilter; import javax.swing.filechooser.FileSystemView; //Jwindow 是一个无边框的框架 public class cutScreen extends JWindow { //beginX 开始的横坐标;beginY 开始的纵坐标 private int beginX, beginY , endX, endY; private Bufferedlmage image = null; private Bufferedlmage templmage = null; private Bufferedlmage savelmage = null; private ToolsWindow tools = null; //构造方法 public cutScreen() throws AWTException, IOException {

Java图形用户界面编程练习

实验八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 ("无反馈信息",Label.CENTER); feedBack.setBackground(Color.green); inputNumber=new TextField("0",5); 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设置提示文本:"猜对了!"。 }

java简单图形用户界面代码

package dsr; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; import https://www.doczj.com/doc/014173274.html,.Socket; public class Login extends JFrame implements ActionListener{ //定义组件 JPanel northPanel,southPanel,centerPanel,centerPanel1,centerPanel11,centerPanel12; JButton loginBtn,registerBtn,cancalBtn; JLabel userLbl,passwordLbl,titleLbl; JTextField userTxt; JPasswordField passwordPwd; static String name; public Login () { super("用户登录"); northPanel=new JPanel(); southPanel=new JPanel(); centerPanel1=new JPanel(); centerPanel11=new JPanel(); centerPanel12=new JPanel(); //标题 titleLbl=new JLabel("欢迎进入考试系统"); titleLbl.setFont(new Font("隶书",Font.BOLD,24)); northPanel.add(titleLbl); this.add(northPanel,BorderLayout.NORTH); //中间部分 centerPanel1.setLayout(new BorderLayout()); userLbl=new JLabel("用户名"); userTxt=new JTextField(12); centerPanel11.add(userLbl); centerPanel11.add(userTxt); centerPanel1.add(centerPanel11,BorderLayout.NORTH); passwordLbl=new JLabel("密码"); passwordPwd=new JPasswordField(12); centerPanel12.add(passwordLbl); centerPanel12.add(passwordPwd);

Java应用程序和小程序的编写

Java应用程序和小程序的编写 学生姓名:学号:专业班级: 实验类型:□验证□综合□设计□创新实验日期:实验成绩: 一、实验项目名称 Java应用程序和小程序的编写 二、实验目的 熟练掌握JDK常用命令:javac、java、appletviewer; 熟悉Java编辑器jcreate或eclipse等 熟练掌握简单Java应用程序和小程序的编辑和运行的过程。 掌握java的输入输出方法 三、实验基本原理 根据结构组成和运行环境的不同,java程序可以分为两类:Java Application和Java Applet。Java Application是完整的程序,需要独立的解释器来解释运行;而Java Applet则是嵌在HTML编写的Web页面中的非独立程序,由Web浏览器内部包含的Java解释器来解释运行。 输入输出是程序的基本功能,图形用户界面简称“GUI”,是目前大多数应用程序使用的输入输出界面。它在图形模式下工作,具有操作简便、美观易懂的优点具有图形界面输入输出功能的应用程序需要工作在支持图形界面的操作系统中,Java Applet程序和Java Application程序都可以在图形界面中工作。 四、主要仪器设备及耗材 计算机一台、JDK和Eclipse软件包。 五、实验步骤 (1)将下载好的jdk软件包解压,进行安装。安装之后配置系统环境变量classpath。 (2)编写简单的java程序,使用javac命令进行编译,使用java命令进行运行。 (3)安装Eclipse软件并在Eclipse中编写java Application程序和Java Applet程序。 (4)图形界面输入输出代码: 习题2-2 实验程序: package student; public class ExerciseOne { public static void main(String[] args) { System.out.println("Welcome to Java World!"); } }

Java基础实验报告-图形用户界面设计

南京工程学院 实验报告 课程名称 JAVA基础 实验项目名称图形用户界面设计 实验学生班级 实验学生姓名 学号 同组学生姓名 实验时间 实验地点 实验成绩评定 指导教师签字年月日

一、实验目的和要求 1.掌握Java Swing组建的使用方法,包括窗口、框架、对话框、面板、文本编辑框、按钮、组合框等多种布局方式,掌握窗口菜单和快捷菜单设计方式。 2.理解委托时间处理模型,掌握不同组件、不同事件的事件处理方法,设计出能够响应事件的Java图形用户界面。 3.熟悉在组件上绘图的方法。 二、实验题目 用表格存储并显示个人所得税税率表,给定一个月收入值,计算应缴的个人所得税。 三、实验方法与步骤(需求分析、算法设计思路、流程图等) 算法设计思路:本次实验题目为计算个人所得税,所以本人从网上找到了国家最新的税收政策,以下为截图:

因此,我设计了以下核心算法 public void actionPerformed(ActionEvent e) { if(e.getSource()==button_b) { double wage=Double.parseDouble((String)text_wage.getText()); double tax = 0; if(wage<=3500) tax=0; if(wage>3500&&wage<=5000) tax=(wage-3500)*0.03; if(wage>5000&&wage<=8000) tax=(wage-3500)*0.1-105; if(wage>8000&&wage<=12500) tax=(wage-3500)*0.2-555; if(wage>12500&&wage<=38500)

实验五 Java图形界面及多线程

实验五图形界面及多线程 【实验目的】 一、掌握Jpanel的使用方法; 二、掌握JAVA简单图形界面的设计; 三、掌握JAVA多线程控制。 【实验内容】 一、在一个Jpanel中显示一个小球,当点击鼠标时,开始移动小球;当小球撞到Jpanel的边框时,小球将反弹回去继续移动。小球用一个线程来控制其移动; 二、每点击一次鼠标,增加一个移动的小球,最多产生20个小球,随机选择小球的颜色; 三、增加功能,当两个小球相撞时,它们将各自反弹。 【实验结果】 //小球类 import java.awt.Color; import java.awt.Point; import java.awt.Rectangle; import java.awt.Shape; import java.awt.geom.Ellipse2D; import java.util.Random; public class Ball { private double x; private double y; private double xR=30; private double yR=30; private double xMove; private double yMove; private Color color; private Ellipse2D shape; private static Random random=new Random(); public Ball(){ color=new Color(random.nextInt(256),random.nextInt(256),random.nextInt(256)); xMove=Math.cos(random.nextDouble()*6.24)*10;

相关主题
文本预览
相关文档 最新文档