App Inventor编程开发集锦2-计算器-第2课-实现常规操作-少儿编程教育网

第2课 代码编写——实现常规操作

这个应用最麻烦的地方就是用户操作的不确定性,他可能随意地、想当然地按下某个键,就像使用一个实物计算器一样,因此我们要尽可能地在功能上接近于实物计算器,给用户一种良好的使用体验。但对于我们的编程过程来说,还是应该从实现最简单的功能入手,先实现常规操作,否则将会迷失在各种不确定之中。

一、输入数字

(1)设置三个全局变量:前数、后数、算符

如第一节所述,前数与后数是运算过程中的被操作数,算符是具体的运算类型。当程序运行伊始,前数与后数的初始值均为0,算符的初始值为空(“”);当用户输入第一串数字时,我们将这个数字保存在后数中;当用户点击算符键时,我们将算符之前输入的数字,即后数,保存在前数中,并设后数的值为0;

(2)创建点击数字过程

按照计算器的使用习惯,如果要输入数字123,会依次点击三个数字键,但三个数字的排列要用程序来处理,这里存在两种情况:

  • 当后数=0时,即,当用户输入第一个数字时,让后数直接等于输入的数字;
  • 当用户接着输入其他数字时,需要将后输入的数字与之前的数字进行拼接。

每输入一个数字,屏幕都会显示最新的输入结果,具体代码如图2-3所示。

App Inventor编程开发集锦2-计算器-第2课-实现常规操作-少儿编程教育网
图2-3 定义点击数字过程
过程中的参数“数”代表用户按下的具体数字。

(3)在按钮点击事件中调用点击数字过程

当用户点击数字键1时,在点击事件处理程序中调用点击数字过程,并将按钮显示文本作为参数,传递给该过程。如图2-4所示。

App Inventor编程开发集锦2-计算器-第2课-实现常规操作-少儿编程教育网
图2-4 在按钮点击事件中调用点击数字过程
以此类推,其他9个按钮的点击事件处理程序也将如法炮制。如图2-5所示。

App Inventor编程开发集锦2-计算器-第2课-实现常规操作-少儿编程教育网
图2-5 所有数字按钮的点击事件处理程序

二、点击算符

(1)定义点击算符过程

如图2-6所示,点击算符过程只有一行代码,即,设全局变量算符等于新近输入的运算符。

App Inventor编程开发集锦2-计算器-第2课-实现常规操作-少儿编程教育网
图2-6 定义点击算符过程
(2)在算符按钮点击事件中调用点击算符过程

App Inventor编程开发集锦2-计算器-第2课-实现常规操作-少儿编程教育网
图2-7 在算符按钮点击事件中调用点击算符过程

三、点击等号

(1)创建点击等号过程

当用户输入了前数、算符及后数之后,点击等号,此时需要对算符进行判断,依据不同的算符,执行不同的运算;在运算完成后,将所得结果保存在前数中,并显示在屏幕上,同时,设置全局变量算符为空,后数=0。具体代码如图2-8所示。

App Inventor编程开发集锦2-计算器-第2课-实现常规操作-少儿编程教育网
图2-8 定义点击等号过程
(2)在等号点击事件中调用点击等号过程

如图2-9所示,在等号点击事件中调用点击等号过程。

App Inventor编程开发集锦2-计算器-第2课-实现常规操作-少儿编程教育网
图2-9 调用点击等号过程

四、代码测试及说明

连接手机进行测试,按照设定的规范操作计算器,计算结果正确。

这里我们创建了3个过程——点击数字、点击算符及点击等号,这三个过程是本程序中仅有的三个过程,在接下来对程序的改进中,仅仅是对这三个过程进行完善,并不会再添加新的过程。