PowerBuilder 编写计算器程序
写的不是很好,大佬们请勿喷
先看效果图:
注意:需要创建2个文本框sle_1和sle_2;sle_2是需要隐藏的
代码如下:
Declare定义变量如下:
decimal add1 //存放操作数
char s1 //存放操作符
int flag //判断计算是否完成
0-9和点的按钮Clicked事件:
(多一样的代码)
if flag=0 then
sle_2.text="" //清空sle_2.text文本框的内容
flag=1 //
end if
/*如果不判断的话,你在第一次点击=按钮后,不点ce按钮,直接开始第二次计算,
文本框上显示的数值会是你第一次计算出的结果和你刚点击的数值,拼接在一起显示;
(第一次计算的结果是10,你点击了3,文本框就显示103) */
if s1="=" then
sle_1.text=" "
s1=""
end if
sle_1.text=sle_1.text+this.text
sle_2.text=sle_2.text+this.text
操作符按钮Clicked事件:
(+,-,*,/,=)按钮代码一样
choose case s1
case '*'
sle_2.text=string(dec(sle_2.text)*add1)
case '/'
sle_2.text=string(add1/dec(sle_2.text))
case '+'
sle_2.text=string(dec(sle_2.text)+add1)
case '-'
sle_2.text=string(add1 - dec(sle_2.text))
end choose
add1=dec(sle_2.text) //保留中间结果
s1=this.text //保留刚刚按下的运算符
flag=0 //准备输入下一个数
sle_1.text=sle_1.text+this.text
CE清除按钮Clicked事件:
add1 =0
s1 =''
flag =0
sle_1.text=''
sle_2.text=''