❶ 如何用Servlet创建简易的Web计算器。
很简单,你首先在jsp页面上模拟一个计算器的界面也就是说把数字键和运算符都模拟出来,然后
用javascript捕获每个按键的动作,把你所按的键的值放到文本框中,按运算键的时候进入到servlet
里面把文本框中的值比如说“1+1=”然后在servlet把几个运算符分离,得到1 ,+,1,=这样写if else 的话你就可以得到结果,把得到的结果放到request中去在转向到jsp中,大功告成
❷ 网页版计算器
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>WEB计算器</title>
<!---计算器功能模块-->
<script language="javascript" type="text/javascript" runat="server">
var lingState="beStart"; //当前状态
var curOper="start"; //当前运算符
var num1=0; //初值
var num2=0; //初值
var subOper=false; // 是否刚刚单击过运算符
var upOper=false;//运算符的标签
var tnumber=false;//MR记住显示框的状态
var cM=false;//记住M启动
var xM=false;//记住按M+
var ms=false;//记住是否按MS
var sk=false;
var twonumber=false;
var ss;//保存MS要保存的值
var sb=0;
//数字键触发功能模块
function number(i)
{
if(subOper ) //表示在此之前刚刚单击过运算符或者刚刚单击过等号
{
form.ipt.value=i; //把输入的值赋给文本框显示
subOper=false;//输入数后,点击了符号
lingState="beInteger";
}
else
{ //表示正在进行或开始一个数字的输入
if(form.ipt.value=="0")//当文本显示框为0时,则把刚刚单击的数值赋给文本框
{
form.ipt.value=i;//当符合条件则把单击的数值(this.value)赋予给显示框1
lingState="beInteger";
}
else
form.ipt.value += i;//当文本显示框不为0,则数值累加显示文本框
}
if(curOper!="start")//判断是否单击过运算符
{
num2=form.ipt.value;
}
// alert("初值num1的值"+num1);
// alert("num2的值"+num2);
//lingState="beStart"; //清除当前状态
upOper=true;//记住输入数字 以便下面+号连+运算
tnumber=true;//记住有值
}
/* + - * / */
//结果运算模块
function sum()
{
if (curOper!="start")//判断是否单击按钮(符号为空
{
switch(curOper)
{
case "+": //判断符号为+时执行+运算
num1= parseFloat(num1)+parseFloat(num2); //把第一次输入的值和第二次的值进行运算
break;
case "-": //判断符号为-时执行+运算
num1= parseFloat(num1)-parseFloat(num2);
break;
case "*": //判断符号为*时执行+运算
num1= parseFloat(num1)*parseFloat(num2);
break;
case "/": //判断符号为/时执行+运算
if(num2=="0")
{
alert("除数不能为零");
}
else{
num1= parseFloat(num1)/parseFloat(num2);
}
break;
}
form.ipt.value=num1;//把运算结果赋给显示框
}
subOper=true;//输入数后,点击了符号
//curOper="start"; //清除当前符号状态
lingState="beStart";//清除当前状态
upOper=false;//=运算一次后记住 避免再按+号又进行运算 ( 清除当前符号状态
sk=true;
}
//常规符号运算功能模块
function allfhao(i)
{
subOper=true;//输入数后 输入符号 进行运算
if (curOper=="start")//实现连运算 原理:当运行当前运算符时实现连运算
{
num1=form.ipt.value; //把第一个数赋值给num1
curOper=i; //单击运算符用变量把运算符记住
tnumber=true;
}
else
{
if(upOper)//当upOper为真时则实现连运算
{
sum();//当符合条件时调用结果运算 实现连运算
}
curOper=i;//单击运算符用变量把运算符记住
}
upOper=false;//=运算一次后记住 避免再按+号又进行运算 ( 清除当前符号状态
lingState="beStart";//清除当前状态
// alert("符号num1的值"+num1);
// alert("num2的值"+num2);
}
//小数点功能模块
function point()
{
if(form.ipt.value.indexOf(".")==-1) //判断是否有小数点,如果有就不显示 如果没有那么进行下面的运算
{
if(lingState=="beStart")//如果进行了等号运算 但并没有小数点 但单击了小数点则显示0.几
{
form.ipt.value="0.";//当符合条件则显示框1 显示0.
subOper=false;//输入数后,点击了符号
lingState="beFloat"; //让一个变量记住以输入小数点
}
if(lingState=="beInteger" )//判断是否有数输入,如果有数数输入但不是接这等号运算则显示小数点
{
form.ipt.value+=".";//当符合条件则显示小数点
lingState="beFloat";//用一个变量记住已经输入一个小数点,当下次输入由于值的改变则不能输入,起到只能输入一个小数点的功能
}
}
}
//全部清除功能模块 C CE Backspace
function cleaktext(i)
{
switch(i)
{
case"C"://清除C
form.ipt.value="0"; //清除文本框内的内容
lingState="beStart"; //清除当前状态
curOper="start"; //清除当前符号状态
subOper=false; // 是否刚刚单击过运算符
upOper=false;//运算符的标签
num1=0;
num2=0;
break;
case"CE": //清除CE
form.ipt.value="0"; //清除文本框内的内容
break;
case"Backspace": //推格删除
if(cM=false)//如果启动MR那么不能实现推格功能
{
if(upOper)
{
if (form.ipt.value.length>1)
{
form.ipt.value=form.ipt.value.substring(0,form.ipt.value.length-1); //运用substring取字符串方法将返回一个包含从原始对象中获得的子字符串的 String 对象。 使用 start 和 end 两者的较小值作为子字符串的起始点。
}
else
{
form.ipt.value="0";//一个一个删除
}
}
break;
}
}
}
/* % 1/x sqrt +/- pi */
//全部的特殊符号运算模块
function alltx(i)
{
switch(i)
{
case "%"://%运算
form.ipt.value=form.ipt.value/100;
num2=form.ipt.value;
break;
case "1/x":
if(form.ipt.value=="0"){
form.ipt.value="除数不能为零。";
}
else {
form.ipt.value=1/form.ipt.value;
num2=form.ipt.value;
}
break;
case "sqrt"://开方
form.ipt.value=Math.sqrt(form.ipt.value); //math对象 开方运算
num2=form.ipt.value;
break;
case "+/-"://+/-运算符 负号运算
if(upOper)//当运行了符号则不能按负号
{
form.ipt.value=0-form.ipt.value;
num2=form.ipt.value;
}
else{
form.ipt.value="0";
}
break;
case "pi":
form.ipt.value="3.1415926";
num2=form.ipt.value;
break;
case "sin":
form.ipt.value=Math.sin(form.ipt.value);
num2=form.ipt.value;
break;
case "cos":
form.ipt.value=Math.sin(form.ipt.value);
num2=form.ipt.value;
break;
case "tan":
form.ipt.value=Math.sin(form.ipt.value);
num2=form.ipt.value;
break;
}
}
//全部M系列功能模块
function checkallM(i){
switch(i)
{
case"M+"://启动M系列功能模块
if(form.ipt.value!="0" && ms==false)
{
form.ipt1.value="M";//在显示框2显示M以告知用户以启动M系列功能
sm=form.ipt.value;
}
if(form.ipt1.value=="M" && ms!=false)
{
sm=eval(ss+'+'+form.ipt.value);//MR保存的值提取实现M+功能
}
xM=true; //记住单击过M+ 以便MR操作
break;
case "MS"://启用M系列功能 启动记忆功能(记忆上一次计算结果)
ss=form.ipt.value;// 把显示框结果给SS保存(予以MR提取
if(form.ipt.value=="0")//当显示框1显示结果为0时单击MS时也可以清除显示框2 M功能
{
form.ipt1.value="";//清除显示框2 M
}
if(form.ipt.value!="0")
{
form.ipt1.value="M";
}
ms=true; //记住单击过Ms 以便MR操作 (看是否赋+运算后的值 还是当前值
break;
case "MR"://提取MS保存数值功能
if(xM)//是否单击m+
{
if(form.ipt1.value=="M" )//当启动M功能时 MR才能起到保存提取的功能
{
form.ipt.value=sm;//当条件符合 则把MS保存的值 并实现M+功能
}
else if(subOper || tnumber){//没有启动M功能 则清除显示框
form.ipt.value="0";
}
}
// else{ form.ipt.value=ss;}
break;
case "MC": // 清除M显示框中M系列的功能
form.ipt1.value="";//清空显示框2的 M功能
xM=false;
ms=false;
break;
}
cM=true;
lingState="beStart";//清除当前状态
}
//onLoad="setStart()"
</script>
<style type="text/css" >
#c{
width:320px;
height:270px;
border:#666666 5px groove;
background-color:#ECE9D8
}
#ipts{ margin:5px 5px 3px 5px; text-align:right; width:270px}
#s{ margin:7px 5px 6px 5px; height:200px}
.bt{ width:30px; height:30px; background-color:#ECE9D8; border:solid 1px #C8C6B0}
.bt2{width:75px; height:30px; color:#F00; background-color:#ECE9D8; border:solid 1px #C8C6B0;}
.bt3{width:20px; height:20px; text-align:center;}
.wz{ font-size:12px}
</style>
</head>
<body >
<!---隐藏层-->
<div id="s">
<FORM METHOD=POST ACTION="" name="form">
<div id="c">
<table width="98%" height="268" border="0" align="center" cellpadding="0">
<tr>
<td height="19" colspan="7">
<table width="294" border="0" cellpadding="0" cellspacing="0" >
<tr>
<td class="wz" width="12" height="19"></td>
<td class="wz" width="47">编辑(E)</td>
<td class="wz" width="49">查看(V)</td>
<td class="wz" width="186">帮助(H)</td>
</tr>
</table></td></tr>
<tr>
<td height="29" colspan="7">
<div id="ipts">
<input name="ipt" type="text" id="ipts" value="0" size="40" maxlength="20" readonly="readonly" />
</div>
</td></tr>
<!-- ipt1 Backspace CE C -->
<tr>
<td height="38" colspan="7" align="center"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="14%" align="center"><input name="ipt1" type="text" disabled="disabled" class="bt3" size="1" maxlength="0" /></td>
<td width="86%" align="center"><table width="97%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center"><input name="button23" type="button" class="bt2" id="button23" style="color:#00F" value="Backspace" onclick="cleaktext(this.value)"/></td>
<td align="center"><input style="color:#00F" name="button21" type="button" class="bt2" id="button20" value="CE" onclick="cleaktext(this.value)"/></td>
<td align="center"><input style="color:#00F" name="button20" type="button" class="bt2" id="button21" value="C" onclick="cleaktext(this.value)"/></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<!-- MC 7 8 9 / sqrt -->
<tr>
<td width="16%" align="center"><table width="99%" height="162" border="0">
<tr>
<td height="35" align="center"><input style="color:#F00" type="button" value="MC" class="bt" onclick="checkallM(this.value)"/></td>
<td width="16%" align="center"><input style="color:#00F" name="button1" type="button" class="bt" id="button1" value="7" onclick="number(this.value)" /></td>
<td width="14%" align="center"><input style="color:#00F" name="button2" type="button" class="bt" id="button2" value="8" onclick="number(this.value)" /></td>
<td width="14%" align="center"><input style="color:#00F" name="button3" type="button" class="bt" id="button3" value="9" onclick="number(this.value)"/></td>
<td width="13%" align="center"><input style="color:#F00" name="button4" type="button" class="bt" id="button4" value="/" onclick="allfhao(this.value)"/></td>
<td width="14%" align="center"><input style="color:#00F" name="button5" type="button" class="bt" id="button5" value="sqrt" onclick="alltx(this.value)"/></td>
<td width="16%" align="center"><input style="color:#00F" name="button24" type="button" class="bt" id="button24" value="sin" onclick="alltx(this.value)"/></td>
</tr>
<!-- MR 4 5 6 * % -->
<tr>
<td width="13%" height="39" align="center"><input style="color:#F00" type="button" value="MR" class="bt" onclick="checkallM(this.value)"/></td>
<td width="16%" align="center"><input style="color:#00F" name="button6" type="button" class="bt" id="button6" value="4" onclick="number(this.value)" /></td>
<td width="14%" align="center"><input style="color:#00F" name="button7" type="button" class="bt" id="button7" value="5" onclick="number(this.value)"/></td>
<td width="14%" align="center"><input style="color:#00F" name="button8" type="button" class="bt" id="button8" value="6" onclick="number(this.value)"/></td>
<td width="13%" align="center"><input style="color:#F00" name="button9" type="button" class="bt" id="button9" value="*" onclick="allfhao(this.value)"/></td>
<td width="14%" align="center"><input style="color:#00F" name="button10" type="button" class="bt" id="button10" value="%" onclick="alltx(this.value)"/></td>
<td width="16%" align="center"><input style="color:#00F" name="button25" type="button" class="bt" id="button25" value="cos" onclick="alltx(this.value)"/></td>
</tr>
<!-- MS 1 2 3 - 1/x -->
<tr>
<td width="13%" height="38" align="center"><input style="color:#F00" type="button" value="MS" class="bt" onclick="checkallM(this.value)" /></td>
<td width="16%" align="center"><input style="color:#00F" name="button11" type="button" class="bt" id="button11" value="1" onclick="number(this.value)"/></td>
<td width="14%" align="center"><input style="color:#00F" name="button12" type="button" class="bt" id="button12" value="2" onclick="number(this.value)"/></td>
<td width="14%" align="center"><input style="color:#00F" name="button13" type="button" class="bt" id="button13" value="3" onclick="number(this.value)"/></td>
<td width="13%" align="center"><input style="color:#F00" name="button14" type="button" class="bt" id="button14" value="-" onclick="allfhao(this.value)"/></td>
<td width="14%" align="center"><input style="color:#00F" name="button15" type="button" class="bt" id="button15" value="1/x" onclick="alltx(this.value)"/></td>
<td width="16%" align="center"><input style="color:#00F" name="button26" type="button" class="bt" id="button26" value="tan" onclick="alltx(this.value)"/></td>
</tr>
<!-- M+ 0 +/- . + = -->
<tr>
<td width="13%" height="38" align="center"><input style="color:#F00" type="button" value="M+" class="bt" onclick="checkallM(this.value)"/></td>
<td width="16%" height="38" align="center"><input style="color:#00F" name="button16" type="button" class="bt" id="button16" value="0" onclick="number(this.value)"/></td>
<td width="14%" height="38" align="center"><input style="color:#00F" name="button17" type="button" class="bt" id="button17" value="+/-" onclick="alltx(this.value)"/></td>
<td width="14%" align="center"><input style="color:#00F" name="button18" type="button" class="bt" id="button18" value="." onclick="point()"/></td>
<td width="13%" align="center"><input style="color:#F00" name="button19" type="button" class="bt" id="button19" value="+" onclick="allfhao(this.value)" /></td>
<td width="14%" align="center"><input style="color:#F00" name="button22" type="button" class="bt" id="button22" value="=" onclick="sum()"/></td>
<td width="16%" align="center"><input style="color:#00F" name="button27" type="button" class="bt" id="button27" value="pi" onclick="alltx(this.value)"/></td>
</tr>
</table>
</td></tr></table>
</div>
</FORM>
</div>
</body>
</html>
❸ 用JAVA应用程序或者Servelet做一个web计算器,比较急!!
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
public class Jisuanqi extends JFrame implements ActionListener {
Result result = new Result(); //定义text的面板
Number_Key number_key = new Number_Key(); //定义按钮面板
//当点击按钮+、-、*、/时,com = true
boolean com = false;
//当i=0时说明是我们第一次输入,字符串text不会累加
int i = 0;
//存放text的内容
String text = "";
//存放点击按钮+、-、*、/之前的数值
double defbutton = 0;
//+、-、*、/的代号分别为1,2,3,4
int symbol = 0;
//构造函数
Jisuanqi() {
super("WangJiao"); //设定标题
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设定关闭窗体时退出程序
JPanel pane = new JPanel(); //定义主面板
pane.setLayout(new BorderLayout());
setBounds(380,220,30,80); //前两个参数是在屏幕上显示的坐标,后两个是大小
//替换图标
ImageIcon icon=new ImageIcon(
Jisuanqi.class.getResource("APPLE.GIF")
);
setIconImage(icon.getImage());
pane.add(result, BorderLayout.NORTH);
pane.add(number_key, BorderLayout.CENTER);
pane.add(number_key.equal, BorderLayout.SOUTH);
number_key.one.addActionListener(this); //对1按钮添加监听事件
number_key.two.addActionListener(this); //对2按钮添加监听事件
number_key.three.addActionListener(this); //对3按钮添加监听事件
number_key.four.addActionListener(this); //对4按钮添加监听事件
number_key.five.addActionListener(this); //对5按钮添加监听事件
number_key.six.addActionListener(this); //对6按钮添加监听事件
number_key.seven.addActionListener(this); //对7按钮添加监听事件
number_key.eight.addActionListener(this); //对8按钮添加监听事件
number_key.nine.addActionListener(this); //对9按钮添加监听事件
number_key.zero.addActionListener(this); //对0按钮添加监听事件
number_key.ce.addActionListener(this); //对置零按钮添加监听事件
number_key.plus.addActionListener(this); //对+按钮添加监听事件
number_key.equal.addActionListener(this); //对=按钮添加监听事件
number_key.sub.addActionListener(this); //对-按钮添加监听事件
number_key.mul.addActionListener(this); //对*按钮添加监听事件
number_key.div.addActionListener(this); //对/按钮添加监听事件
number_key.point.addActionListener(this); //对.按钮添加监听事件
setContentPane(pane);
pack(); //初始化窗体大小为正好盛放所有按钮
}
//各个按钮触发的事件
public void actionPerformed(ActionEvent e) {
/*如果是点击数字按钮那么先要判断是否在此之前点击了+、-、*、/、=,如果是那么com=true
* 如果没有com= false;或者是否点击数字键,如果是i = 1,如果没有 i = 0;
**/
if (e.getSource() == number_key.one) {
if (com || i == 0) {
result.text.setText("1");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "1");
}
} else if (e.getSource() == number_key.two) {
if (com || i == 0) {
result.text.setText("2");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "2");
}
} else if (e.getSource() == number_key.three) {
if (com || i == 0) {
result.text.setText("3");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "3");
}
} else if (e.getSource() == number_key.four) {
if (com || i == 0) {
result.text.setText("4");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "4");
}
} else if (e.getSource() == number_key.five) {
if (com || i == 0) {
result.text.setText("5");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "5");
}
} else if (e.getSource() == number_key.six) {
if (com || i == 0) {
result.text.setText("6");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "6");
}
} else if (e.getSource() == number_key.seven) {
if (com || i == 0) {
result.text.setText("7");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "7");
}
} else if (e.getSource() == number_key.eight) {
if (com || i == 0) {
result.text.setText("8");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "8");
}
} else if (e.getSource() == number_key.nine) {
if (com || i == 0) {
result.text.setText("9");
com = false;
i = 1;
} else {
text = result.text.getText();
result.text.setText(text + "9");
}
}
/*对于0这个按钮有一定的说法,在我的程序里不会出现如00000这样的情况,我加了判断条件就是
* 如果text中的数值=0就要判断在这个数值中是否有.存在?如果有那么就在原来数值基础之上添
* 加0;否则保持原来的数值不变
*/
else if (e.getSource() == number_key.zero) { //result.text.getText()是得到text里内容的意思
if (com || i == 0) {
result.text.setText("0");
com = false;
i = 1;
} else {
text = result.text.getText();
if (Float.parseFloat(text) > 0 || Float.parseFloat(text) < 0) { //Float.parseFloat(text)就是类型转换了,下面都是一样
result.text.setText(text + "0");
} else {
if (text.trim().indexOf(".") == -1) {
result.text.setText(text);
} else {
result.text.setText(text + "0");
}
}
}
} else if (e.getSource() == number_key.ce) {
result.text.setText("0");
i = 0;
com = true;
}
/*本程序不会让一个数值中出现2个以上的小数点.具体做法是:判断是否已经存在.存在就不添加,
* 不存在就添加.
*/
else if (e.getSource() == number_key.point) {
if (com || i == 0) {
result.text.setText("0.");
com = false;
i = 1;
} else {
text = result.text.getText();
if (text.trim().indexOf(".") == -1) {
result.text.setText(text + ".");
} else {
result.text.setText(text);
}
}
} //获得点击+之前的数值
else if (e.getSource() == number_key.plus) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
symbol = 1;
} //获得点击-之前的数值
else if (e.getSource() == number_key.sub) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
symbol = 2;
} //获得点击*之前的数值
else if (e.getSource() == number_key.mul) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
System.out.println(defbutton);
symbol = 3;
} //获得点击/之前的数值
else if (e.getSource() == number_key.div) {
com = true;
i = 0;
defbutton = Double.parseDouble(result.text.getText());
symbol = 4;
} else if (e.getSource() == number_key.equal) {
switch (symbol) {
case 1 : //计算加法
{
double ad =
defbutton + Double.parseDouble(result.text.getText());
result.text.setText(ad + "");
i = 0;
text = "";
break;
}
case 2 ://计算减法
{
double ad =
defbutton - Double.parseDouble(result.text.getText());
result.text.setText(String.valueOf(ad));
i = 0;
text = "";
break;
}
case 3 ://计算乘法
{
double ad =
defbutton * Double.parseDouble(result.text.getText());
result.text.setText(ad + "");
i = 0;
text = "";
break;
}
case 4 ://计算除法
{
double ad =
defbutton / Double.parseDouble(result.text.getText());
result.text.setText(ad + "");
i = 0;
text = "";
break;
}
}
System.out.println(com);
}
}
public static void main(String[] args) {
Jisuanqi loveyou = new Jisuanqi();
loveyou.show();
}
}
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
//计算器数字按钮定义面板
class Number_Key extends JPanel {
JButton zero = new JButton("0"); //数字键0
JButton one = new JButton("1"); //数字键1
JButton two = new JButton("2"); //数字键2
JButton three = new JButton("3"); //数字键3
JButton four = new JButton("4"); //数字键4
JButton five = new JButton("5"); //数字键5
JButton six = new JButton("6"); //数字键6
JButton seven = new JButton("7"); //数字键7
JButton eight = new JButton("8"); //数字键8
JButton nine = new JButton("9"); //数字键9
JButton plus = new JButton("+");
JButton sub = new JButton("-");
JButton mul = new JButton("*");
JButton div = new JButton("/");
JButton equal = new JButton("=");
JButton ce = new JButton("清零"); //置零键
JButton point = new JButton(".");
Number_Key() {
setLayout(new GridLayout(4, 4, 1, 1)); //定义布局管理器为网格布局
setBackground(Color.blue); //设置背景颜色
//添加按钮
add(one);
add(two);
add(three);
add(four);
add(five);
add(six);
add(seven);
add(eight);
add(nine);
add(zero);
add(plus);
add(sub);
add(mul);
add(div);
add(point);
add(equal);
add(ce);
}
}
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
//计算器显示结果的窗体
class Result extends JPanel {
//text先是输入和结果
JTextField text = new JTextField("0");
Result() { //讲输入的数字或得到的结果在text的右边显示
text.setHorizontalAlignment(SwingConstants.RIGHT);
text.enable(false); //文本框不能编辑
setLayout(new BorderLayout()); //设定布局管理器边框布局
add(text, BorderLayout.CENTER); //text放置在窗体的中间
}
}
❹ 基于Web的计算是什么意思
这是一种基于网络应用的架构类型.
以前应用较多的是C/S模式,即客户机/服务器模式,这是一种胖客户端形式,服务器端存储数据,客户端发送请求,完成大部分的运算.
现在应用较多的是B/S模式,即浏览器/服务器模式,这是一种瘦客户端模式.客户端发送请求,运算处理在服务器进行,然后将结果返回给客户端.这就是基于WEB计算的主要方式.
❺ 利用visual studio 制作WEB计算器的代码
socket value when create:668connect to server successsent 589 bytesfd.socket: 668,select return,ret=1now rcv from server ...rcved 381 bytes,type=2 data length=376<?xml version="1.0" encoding="GBK"?>https://xianxl.nc.jx.cn:8443/heartServer/portal.do"</A> heartUDPAddress="xianxl.nc.jx.cn:443" heartcount="4" interval="300" type="1" useproxy="true"/>close socket , resolving data...Resolve data from server success
❻ 求解做一个Web数学计算器
首先,代码大概看得懂吧!!!
分析设计说明就得自己写了,说下大体的步骤:
1.首先是用html表格的形式,大概确定计算器的结构(参与运算的数,运算符,以及计算结果按钮)
参与运算的数由用户输入,采用文本输入,结果使用按钮计算显示
运算符包括+、-、*、/.可以用下拉列表实现,也就是<select></select>
<table class="table1">
<tr><td>请输入第一个数:</td><td><input type="text" name="num1"/></td></tr>
<tr><td>请输入第二个数:</td><td><input type="text" name="num2"/></td></tr>
<tr>
<td>
<select name="oper">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
</td>
<td ><input type="submit" value="计算" onclick="myCal()"></td></tr>
</table>
2.用javascript实现计算器计算功能
<script type="text/javascript">
function myCal()
{
var num = document.getElementsByTagName("input");
var oper = document.getElementsByTagName("select");
var resultp;
switch(oper[0].value)
{
case "+":
resultp=parseFloat(num[0].value)+parseFloat(num[1].value);
alert(resultp);
break;
case "-":
resultp=parseFloat(num[0].value)-parseFloat(num[1].value);
alert(resultp);
break;
case "*":
resultp=parseFloat(num[0].value)*parseFloat(num[1].value);
alert(resultp);
break;
case "/":
resultp=parseFloat(num[0].value)/parseFloat(num[1].value);
alert(resultp);
break;
default:
break;
}
}
</script>
以上代码功能为:获取参与运算的数值、运算符,其中注意类型的转换(文本转换为数值型),对不同的运算符采用不同的处理,switch开关语句实现。
3.CSS样式表的使用
<style type="text/css">
*{margin:0px;padding:0px;}
.table1{width:300px;border:1px solid blue;background:gray;}
</style>
使用了通配符合类选择器,根据自己的需要修改,包括背景颜色、表格边框、颜色、宽度等等。
❼ JAVA web中 怎样调用系统的计算器
写一个Applet嵌入到页面中,然后再Applet中调用系统计算器
楼上的,请先弄清前后台代码再回答问题,你写在<%%>里面的java程序在后台执行了,如果后台使用的是window系统的话,你会在你的服务器上打开一个计算器,如果不是,等着报错吧
❽ 如何用 java web 做一个小型的计算器
这个。。简单点jsp+servlet 就行了,jsp把页面显示出来,点击计算后,把数据传给后台的servlet,处理完数据后把结果再显示到原JSP页面上。
LZ是要思路? 还是没接触过JSP与servlet
❾ JAVA在WEB上的应用——实现简易计算器
建立14个按钮,按钮的名字都要Command1,设置Index属性,0~9分别对应数字0~9,10为小数点,11为等号,12~14分别对应+、-、*和/。
2、输入如下代码:
Dim Num1, Num2 As Single
Dim StrNum1, StrNum2 As String
Dim FirstNum As Boolean
Dim PointFlag As Boolean
Dim Runsign As Integer
Dim SignFlag As Boolean
Private Sub Command1_Click(Index As Integer)
Select Case Index
Case 0 To 9
If FirstNum Then
StrNum1 = Str(Index)
FirstNum = False
Else
StrNum1 = LTrim(StrNum1) + LTrim(Str(Index))
End If
Text1.Text = Val(StrNum1)
Case 10
If Not PointFlag Then
If FirstNum Then
StrNum1 = "0."
FirstNum = False
Else
StrNum1 = LTrim(StrNum1) + LTrim(".")
End If
Else
Exit Sub
End If
PointFlag = True
Text1.Text = Val(StrNum1)
Case 12 To 15
FirstNum = True
PointFlag = False
If SignFlag Then
Call Run
Else
SignFlag = True
StrNum2 = StrNum1
StrNum1 = ""
End If
Runsign = Index - 11
Case 11
On Error Resume Next
If Not SignFlag Then
Text1.Text = StrNum1
equal = Val(StrNum1)
FirstNum = True
PointFlag = False
Else
Call Run
SignFlag = False
End If
Case Else
Call ClearData
End Select
End Sub
Private Sub Form_Load()
If App.PrevInstance Then MsgBox "请不要多次运行此程序,谢谢!", vbAbortRetryIgnore: Unload Me
Num1 = 0
Num2 = 0
StrNum1 = ""
StrNum2 = ""
FirstNum = True
PointFlag = False
Runsign = 0
SignFlag = False
End Sub
Sub Run()
On Error Resume Next
Dim equal As Single
Dim equal2 As Double
Num1 = Val(StrNum2)
Num2 = Val(StrNum1)
Select Case Runsign
Case 1
equal = Num1 + Num2
If Num1 >= 65536 Or Num2 >= 65536 Or equal >= 65536 Then
equal = 0
equal2 = Num1 + Num2
End If
Case 2
equal = Num1 - Num2
If Num1 >= 65536 Or Num2 >= 65536 Or equal >= 65536 Then
equal = 0
equal2 = Num1 - Num2
End If
Case 3
equal = Num1 * Num2
If Num1 >= 65536 Or Num2 >= 65536 Or equal >= 65536 Then
equal = 0
equal2 = Num1 * Num2
End If
Case 4
equal = Num1 / Num2
If Num1 >= 65536 Or Num2 >= 65536 Or equal >= 65536 Then
equal = 0
equal2 = Num1 / Num2
End If
End Select
If equal = 0 Then a = equal2 Else a = equal
StrNum2 = Str(a)
StrNum1 = StrNum2
Text1.Text = Val(StrNum2)
End Sub
Sub ClearData()
Num1 = 0
Num2 = 0
StrNum1 = ""
StrNum2 = ""
FirstNum = True
PointFlag = False
Runsign = 0
SignFlag = False
Text1.Text = 0
End Sub