湘教在线

当前位置:首页>课件制作>方正奥思>正文

累计加分的实现

√湘教在线   来源:  时间:[2007-7-4 11:51:56] 进入论坛

    曾经有个用户想实现这样的效果:在一页内对50个无线按钮对象进行累计计分,每按一个按钮就得一分值,每个按钮分值不同。并且还得控制只能选这50个选项其中的任意10个,再进行累计加分,不能超过10个选项。
    首先,我们需要取得按钮的状态,对于无线按钮来说就是两个状态:选中和非选中。我们需要判断,若已经选中了10个按钮了,就不允许再选中其他按钮,所以我们还要记录点按按钮的次数。点按每个按钮都会取得不同的分值,我们还需要记录点按这10个按钮的累计得分。另外,我们还要考虑到退选的情况,即读者已经选中了,但又退选了。退选后还要把这个按钮的分值再减去。

 

    好了,现在我们需要创建两个整数变量:
    sum----记录总分值;
    time----记录点按按钮的次数。

    然后我们要分别给每个按钮定义动作,例如无线按钮的对象名为---无线按钮_1,所赋的值为---3,则动作定义如下:

    并且,不要忘记在“前景页属性”的“页进入前”事件中给上述两个变量赋值为0:
    sum=0
    time=0

    在“奥思实例”版中有一个例子radio,内容是:在一页中创建3个无线按钮,要求只能选中任意2个,并累计两个按钮的得分。你可以下载对照制作。

    还有一点需要特别注意的,有很多人在制作累计加分时定义了很多变量,每一个按钮对应一个变量,之后再把所有的变量相加。这样做没有错,但是,奥思对表达式的长度有限制,最长为127字节,当把几十个变量相加时,有可能超过这一限制,这样将导致运算不正确。所以,建议你在制作时定义一些中间变量,例如,s1=n1+...+n10,s2=n11+...+n20,...之后再s1+s2+...+sn。或者采用本文上面所说的方法,只定义一个记总分的变量sum,然后sum=sum+所赋的值。

上一篇: 计时器的制作
分类信息
湘教在线
湘教在线,更多精彩在首页,
湘ICP备08101769号 - 给湘教在线提意见
网站介绍 - 广告服务 - 联系我们 - 网站导航 - 黄金会员 - 服务承诺 - 诚聘高手 -
湘教在线版权所有
©2003-2008