JAVA计算器的图形界面设计_java课程设计报告_简单图形界面计算器的设计.doc

本文介绍了一次Java课程设计,任务是创建一个图形界面计算器,具备基本的加、减、乘、除等运算,并实现了千位符分隔符功能,便于数字输入和阅读。设计中使用了Swing控件,将计算器分为输入、运算符控制和显示三部分,通过按钮和文本字段交互。作者还额外增加了一个按钮用于实现千位分隔符的添加和显示。
摘要由CSDN通过智能技术生成

PAGE

PAGE 2

Java 课程设计

简单图形界面计算器的设计

课程名称 Java程序设计

选题名称 简单图形界面计算器的设计

专 业

班 级

姓 名

学 号

指导教师

简单图形界面计算器的设计

一、设计任务与目标?

本次java程序设计我的设计任务是设计一个图形界面(GUI)的计算器应用程序并且能够完成简单的算术运算。本次任务的基本要求是这个计算器应用程序可以完成十进制的加、减、乘、除、求倒、取余、开方运算,且有小数点、正负号、退格和清零功能。而我要在此基础上添加一项千位符分隔符的功能,即以三位为一级,在输入的一串数字中每三位加入一个逗号,这项功能国际通用,并已经成为惯例,会计记账都用这种方法便于账目核算与管理。

GUI计算器设计的具体目标:

完成十进制的加、减、乘、除、求倒、取余和开方运算;

有小数点和正负号加入运算;

有退格、复位和清零的功能;

有千位符分隔符的功能,即在输入的一串数字中每三位加入一个逗号。

二、方案设计与论证?

1.设计目标的总体分析

(1)设计目标的需求分析:计算器是现在一个普遍应用的工具,能够解决许多人工所无法计算的数据,节省大量宝贵的时间。

(2)设计目标的功能分析:实现计算器系统的功能,主要有两个功能模块:输入 和 输出。

(3)设计原则:基于计算器系统要具有适用性广、操作简便等特点,本系统预计要达到以下几个目标:①满足以上的基本功能要求;②能够在常见的计算机及其操作系统上运行。

2.设计的基本思路

利用GUI的界面设计,将整个大设计分为三块,分别是数据的输入,运算符功能符的控制和数据的输入输出显示。利用Swing控件,数据的输入由0~9这10个按钮来表示,用“+”、“-”、“*”、“/”、“1/x”、“%”、“sqrt”这7个按钮来表示加、减、乘、除、求倒、取余、开方运算,用“.”和“±”这2个按钮来表示小数点和正负号,用“Back”、“CE”和“C”这3个按钮来表示退格、复位和清零的功能,数据的输入输出显示由文本字段来表示。将计算器的总体界面设计好后,再将代码分别写入不同的按钮的源程序中。

我要完成的一项改进,即添加一个拥有千位符分隔符功能的按钮,按下这个按钮能够在输入的一串数字中每三位加入一个逗号并且显示出来。我要在之前的界面设计的基础上多添加一个按钮“$”来表示千位符分隔符,并且将功能代码写入这个按钮的源程序中。

三、程序流程图,程序清单与调用关系?

1. 程序流程图:

2. 程序清单

0~9数据的输入

private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

if(flag == false&&!jTextField1.getText().equals("0"))

jTextField1.setText(jTextField1.getText()+"1");

else

jTextField1.setText("1");

flag = false;

}

“+”号的控制

private void jButton19ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

//加号

d1 = Double.parseDouble(jTextField1.getText());

flag = true;

op = "+";

}

“-”号的控制

private void jButton18ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your

题目:简易计算器设计 一、设计概要 1、设计内容 计算器设计使用图形用户界面实现,能够进行简单、乘、除四则计算 ; 参与运算的数字通过点击按钮输入。 2、程序流程图 详细设计 import java.awt.BorderLayout; //导入AWT页面设置类 import java.awt.Button; //导入AWT按钮类 import java.awt.Frame; import java.awt.GridLayout; import java.awt.Panel; import java.awt.TextField; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; //导入AWT鼠标监视器 import java.awt.event.WindowEvent; import java.awt.event.WindowListener;//导入AWT窗口监视器 //创建计算器的主窗口,该类含有main函数 public class Calculator { public static void main(String[] args) { //创建Frame对象 Frame f = new Frame("Calculator"); //创建文本框,用于接收数字和操作 final TextField tf = new TextField(); //声明一个面板用于存放按钮 Panel p = new Panel(); f.setLayout(new BorderLayout()); //将文本框放在北部 f.add(tf, BorderLayout.NORTH); //将按钮放于中部 f.add(p, BorderLayout.CENTER); //设置布局模式 p.setLayout(new GridLayout(4, 4)); //创建16个按钮 Button one = new Button("1"); Button two = new Button("2"); Button three = new Button("3"); Button four = new Button("4"); Button five = new Button("5"); Button six = new Button("6"); Button seven = new Button("7"); Button eight = new Button("8"); Button nine = new Button("9"); Button zero = new Button("0"); Button add = new Button("+"); Button sub = new Button("-"); Button mul = new Button("*"); Button div = new Button("/"); Button decimal = new Button("."); final Button equal = new Button("="); //将按钮添到P p.add(one); p.add(two); p.add(three); p.add(four); p.add(five); p.add(six); p.add(seven); p.add(eight); p.add(nine); p.add(zero); p.add(add); p.add(sub); p.add(mul); p.add(div); p.add(decimal); p.add(equal); final String[] ary = {"", null, ""}; //该类为主类创建数字按钮对象 class NumMouseListener implements MouseListener{ public void mouseClicked(MouseEvent e) { String num = ((Button)e.getSource()).getLabel().trim(); if(ary[1] == null) { ary[0] = ary[0] + "" + num; } else{ ary[2] = ary[2] + "" + num; } tf.setText(tf.getText() + "" + num); } public void mouseEntered(MouseEvent e) {} public void mouseExited(MouseEvent e) {} public void mousePressed(Mous
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值