无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 143|回复: 25
打印 上一主题 下一主题

曾经写的PECMD脚本年龄计算器怎么好出错?

[复制链接]
跳转到指定楼层
1#
发表于 2025-2-17 11:57:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 ge 于 2025-2-17 17:01 编辑

版号│☆PECMD v2012.1.88     fix
TEAM ENVI^ ENVIMODE=1| ENVI^ FORCELOCAL=1
DOW1
_SUB DOW1,W368H388
    LABE LABE1,L12T12W72H24,生肖:,,,18
    EDIT Edit1,L84T12W30H30,,CALL DOW2,,,18
    LABE LABE2,L200T12W120H24,今年是:,,,18
    LABE LABE3,L328T12W72H24,年,,,18
    EDIT Edit2,L288T12W30H30,,,,,18
    ITEM BUTT1,L120T12W72H28,计算年龄,CALL DOW2
    MEMO MEMO1,L18T48W338H300,,,,,18
    DATE SJ
    LSTR JS=4,%SJ%
    CALC JN=MOD(%JS%,12)
    IFEX $%JN%=1,TEAM ENVI CZ=10| ENVI @Edit2=鸡
    IFEX $%JN%=2,TEAM ENVI CZ=11| ENVI @%Edit2=狗
    IFEX $%JN%=3,TEAM ENVI CZ=12| ENVI @%Edit2=猪
    IFEX $%JN%=4,TEAM ENVI CZ=1| ENVI @Edit2=鼠
    IFEX $%JN%=5,TEAM ENVI CZ=2| ENVI @Edit2=牛
    IFEX $%JN%=6,TEAM ENVI CZ=3| ENVI @Edit2=虎
    IFEX $%JN%=7,TEAM ENVI CZ=4| ENVI @Edit2=兔
    IFEX $%JN%=8,TEAM ENVI CZ=5| ENVI @Edit2=龙
    IFEX $%JN%=9,TEAM ENVI CZ=6| ENVI @Edit2=蛇
    IFEX $%JN%=10,TEAM ENVI CZ=7| ENVI @Edit2=马
    IFEX $%JN%=11,TEAM ENVI CZ=8| ENVI @Edit2=羊
    IFEX $%JN%=0,TEAM ENVI CZ=9| ENVI @Edit2=猴
_END

_SUB DOW2
    FIND $%Edit1%=鼠,ENVI JJ=1
    FIND $%Edit1%=牛,ENVI JJ=2
    FIND $%Edit1%=虎,ENVI JJ=3
    FIND $%Edit1%=兔,ENVI JJ=4
    FIND $%Edit1%=龙,ENVI JJ=5
    FIND $%Edit1%=蛇,ENVI JJ=6
    FIND $%Edit1%=马,ENVI JJ=7
    FIND $%Edit1%=羊,ENVI JJ=8
    FIND $%Edit1%=猴,ENVI JJ=9
    FIND $%Edit1%=鸡,ENVI JJ=10
    FIND $%Edit1%=狗,ENVI JJ=11
    FIND $%Edit1%=猪,ENVI JJ=12
    ENVI SZ=
    ENVI XH=144
    LOOP %XH%>=0,TEAM CALC BMN=%JS%+%JJ%-%XH%-%CZ%| CALC JG=%JS%-%BMN%| CALC XH=%XH%-12| ENVI SZ=  本命年:%BMN%  年龄:%JG%\n%SZ%
    ENVI @MEMO1=%SZ%
_END
想要的是在输入框里面输入属相,然后回车就可以在编辑框里面输出多行的是哪年的,多大了。但是结果有的时候就不准确,不知道为什么?

点评

能不能弄一个:输入岁数,显示属相的  发表于 2025-3-4 13:14

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5 能不能弄一个:输入岁数,显示属相的

查看全部评分

2#
发表于 2025-2-17 17:48:06 | 只看该作者
一瞪眼看   Edit1  没有判断非属相的输入

点评

ge
謝謝指教!怎樣才能解決呀?  详情 回复 发表于 2025-2-17 19:42
回复

使用道具 举报

3#
 楼主| 发表于 2025-2-17 19:42:40 | 只看该作者
红毛樱木 发表于 2025-2-17 17:48
一瞪眼看   Edit1  没有判断非属相的输入

謝謝指教!怎樣才能解決呀?
回复

使用道具 举报

4#
发表于 2025-2-17 21:30:11 | 只看该作者
ge 发表于 2025-2-17 19:42
謝謝指教!怎樣才能解決呀?
  1. TEAM ENVI^ ENVIMODE=1| ENVI^ FORCELOCAL=1
  2. DOW1
  3. _SUB DOW1,W368H388
  4.     LABE LABE1,L12T12W72H24,生肖:,,,18
  5.     EDIT Edit1,L84T12W30H30,,CALL DOW2,,,18
  6.     LABE LABE2,L200T12W120H24,今年是:,,,18
  7.     LABE LABE3,L328T12W72H24,年,,,18
  8.     EDIT Edit2,L288T12W30H30,,,-,,18
  9.     ITEM BUTT1,L120T12W72H28,计算年龄,CALL DOW2
  10.     MEMO MEMO1,L18T48W338H300,,,,,18
  11.     DATE JS y
  12.     CALC JN=MOD(%JS%,12)
  13.     IFEX $%JN%=1,TEAM ENVI CZ=10| ENVI @Edit2=鸡
  14.     IFEX $%JN%=2,TEAM ENVI CZ=11| ENVI @%Edit2=狗
  15.     IFEX $%JN%=3,TEAM ENVI CZ=12| ENVI @%Edit2=猪
  16.     IFEX $%JN%=4,TEAM ENVI CZ=1| ENVI @Edit2=鼠
  17.     IFEX $%JN%=5,TEAM ENVI CZ=2| ENVI @Edit2=牛
  18.     IFEX $%JN%=6,TEAM ENVI CZ=3| ENVI @Edit2=虎
  19.     IFEX $%JN%=7,TEAM ENVI CZ=4| ENVI @Edit2=兔
  20.     IFEX $%JN%=8,TEAM ENVI CZ=5| ENVI @Edit2=龙
  21.     IFEX $%JN%=9,TEAM ENVI CZ=6| ENVI @Edit2=蛇
  22.     IFEX $%JN%=10,TEAM ENVI CZ=7| ENVI @Edit2=马
  23.     IFEX $%JN%=11,TEAM ENVI CZ=8| ENVI @Edit2=羊
  24.     IFEX $%JN%=0,TEAM ENVI CZ=9| ENVI @Edit2=猴
  25. _END

  26. _SUB DOW2
  27.     ENVI JJ=0
  28.     FIND $%Edit1%=鼠,ENVI JJ=1
  29.     FIND $%Edit1%=牛,ENVI JJ=2
  30.     FIND $%Edit1%=虎,ENVI JJ=3
  31.     FIND $%Edit1%=兔,ENVI JJ=4
  32.     FIND $%Edit1%=龙,ENVI JJ=5
  33.     FIND $%Edit1%=蛇,ENVI JJ=6
  34.     FIND $%Edit1%=马,ENVI JJ=7
  35.     FIND $%Edit1%=羊,ENVI JJ=8
  36.     FIND $%Edit1%=猴,ENVI JJ=9
  37.     FIND $%Edit1%=鸡,ENVI JJ=10
  38.     FIND $%Edit1%=狗,ENVI JJ=11
  39.     FIND $%Edit1%=猪,ENVI JJ=12
  40.     IFEX #%JJ%>0,
  41.     {*
  42.         ENVI SZ=
  43.         ENVI XH=144
  44.         LOOP %XH%>=0,TEAM CALC BMN=%JS%+%JJ%-%XH%-%CZ%| CALC JG=%JS%-%BMN%| CALC XH=%XH%-12| ENVI SZ=  本命年:%BMN%  年龄:%JG%\n%SZ%
  45.         ENVI @MEMO1=%SZ%
  46.     }!  
  47.     {*
  48.         ENVI @MEMO1=请输入正确的属相!!!
  49.     }
  50. _END
复制代码

点评

ge
谢谢!我刚才弄错了,以为JJ的值可以不用呢,结果不行  详情 回复 发表于 2025-2-18 15:28
ge
谢谢!我才反应过来这段是不是可以不用?当时想了当天才发现的可以用余数函数,开始是以一个年份为基准,后来发现如果与这个差距太大还是一样  详情 回复 发表于 2025-2-18 15:19
回复

使用道具 举报

5#
 楼主| 发表于 2025-2-18 15:19:28 | 只看该作者
本帖最后由 ge 于 2025-2-18 15:28 编辑
谢谢!我刚才弄错了,以为JJ的值可以不用呢,结果不行

回复

使用道具 举报

6#
 楼主| 发表于 2025-2-18 15:28:59 | 只看该作者

谢谢!我刚才弄错了,以为JJ的值可以不用呢,结果不行
回复

使用道具 举报

7#
发表于 2025-3-4 13:15:32 | 只看该作者
能不能弄一个:输入岁数,显示属相的 谢谢

点评

ge
改好了!电脑不好使了,也没有找到问题,才弄好,有的我也忘记了,又找的FIND和IFEX的区别都不知道了,还有单选框是怎么判断状态的  详情 回复 发表于 2025-3-5 11:25
ge
這個和我的差不多呀,用計算方法就可以了呀!  详情 回复 发表于 2025-3-4 18:25
回复

使用道具 举报

8#
 楼主| 发表于 2025-3-4 18:25:05 | 只看该作者
yyz2191958 发表于 2025-3-4 13:15
能不能弄一个:输入岁数,显示属相的 谢谢

這個和我的差不多呀,用計算方法就可以了呀!

点评

我不晓得,麻烦你弄一个好吗?谢谢  详情 回复 发表于 2025-3-4 18:30

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

9#
发表于 2025-3-4 18:30:37 | 只看该作者
ge 发表于 2025-3-4 18:25
這個和我的差不多呀,用計算方法就可以了呀!

我不晓得,麻烦你弄一个好吗?谢谢

点评

ge
我明天看看  详情 回复 发表于 2025-3-4 18:35
ge
好的!我當時也都不懂,多看看命令幫助,還有人家的腳本,就學到了一些,現在也有不懂的,但是也學到了,要多看,多動手  详情 回复 发表于 2025-3-4 18:34
回复

使用道具 举报

10#
 楼主| 发表于 2025-3-4 18:34:21 | 只看该作者
yyz2191958 发表于 2025-3-4 18:30
我不晓得,麻烦你弄一个好吗?谢谢

好的!我當時也都不懂,多看看命令幫助,還有人家的腳本,就學到了一些,現在也有不懂的,但是也學到了,要多看,多動手
回复

使用道具 举报

11#
 楼主| 发表于 2025-3-4 18:35:02 | 只看该作者
yyz2191958 发表于 2025-3-4 18:30
我不晓得,麻烦你弄一个好吗?谢谢

我明天看看

点评

好的 谢谢  详情 回复 发表于 2025-3-4 18:37

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

12#
 楼主| 发表于 2025-3-4 18:35:42 | 只看该作者
我知道問題了,是限制回復間隔,這是為什麽呢?為什麽要限制?
回复

使用道具 举报

13#
发表于 2025-3-4 18:37:27 | 只看该作者

好的 谢谢
回复

使用道具 举报

14#
 楼主| 发表于 2025-3-5 11:25:36 | 只看该作者
yyz2191958 发表于 2025-3-4 13:15
能不能弄一个:输入岁数,显示属相的 谢谢

改好了!电脑不好使了,也没有找到问题,才弄好,有的我也忘记了,又找的FIND和IFEX的区别都不知道了,还有单选框是怎么判断状态的
  1. TEAM ENVI^ ENVIMODE=1| ENVI^ FORCELOCAL=1
  2. DOW1
  3. _SUB DOW1,W380H98
  4.     LABE LABE1,L12T18W152H24,请输入年龄:,,,18
  5.     EDIT Edit1,L144T16W44H30,,CALL DOW2,,,18
  6.     RADI Radio1,L196T10W40H20,周岁,CALL DOW2,0
  7.     RADI Radio2,L196T34W40H20,虚岁,CALL DOW2,1
  8.     LABE LABE2,L240T18W100H24,属相是:,,,18
  9.     EDIT Edit2,L328T16W30H30,,,-,,18
  10. _END

  11. _SUB DOW2
  12.     DATE JY y
  13.     IFEX $%Radio1.Check%=1,ENVI NL=%Edit1%! ENVI NL=%Edit1%+1
  14.     CALC JS=%JY%-%NL%
  15.     CALC JN=MOD(%JS%,12)
  16.     IFEX $%JN%=1,ENVI @Edit2=鸡
  17.     IFEX $%JN%=2,ENVI @%Edit2=狗
  18.     IFEX $%JN%=3,ENVI @%Edit2=猪
  19.     IFEX $%JN%=4,ENVI @Edit2=鼠
  20.     IFEX $%JN%=5,ENVI @Edit2=牛
  21.     IFEX $%JN%=6,ENVI @Edit2=虎
  22.     IFEX $%JN%=7,ENVI @Edit2=兔
  23.     IFEX $%JN%=8,ENVI @Edit2=龙
  24.     IFEX $%JN%=9,ENVI @Edit2=蛇
  25.     IFEX $%JN%=10,ENVI @Edit2=马
  26.     IFEX $%JN%=11,ENVI @Edit2=羊
  27.     IFEX $%JN%=0,ENVI @Edit2=猴
  28. _END
复制代码


点评

有BUG,比如 67、68 虚岁就没有显示,能不能修改一下谢谢  发表于 2025-3-5 11:47
有BUG,比如 67、68 虚岁就没有显示,能不能修改一下谢谢  详情 回复 发表于 2025-3-5 11:46
非常感谢  详情 回复 发表于 2025-3-5 11:35

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

15#
发表于 2025-3-5 11:35:13 | 只看该作者
ge 发表于 2025-3-5 11:25
改好了!电脑不好使了,也没有找到问题,才弄好,有的我也忘记了,又找的FIND和IFEX的区别都不知道了,还 ...

非常感谢

点评

ge
客氣了!這沒有什麼,多看看幫助和實例就差不多了  详情 回复 发表于 2025-3-5 13:03
回复

使用道具 举报

16#
发表于 2025-3-5 11:46:55 | 只看该作者
ge 发表于 2025-3-5 11:25
改好了!电脑不好使了,也没有找到问题,才弄好,有的我也忘记了,又找的FIND和IFEX的区别都不知道了,还 ...

有BUG,比如 67、68 虚岁就没有显示,能不能修改一下谢谢

点评

ge
我這正常呀!  详情 回复 发表于 2025-3-5 12:59
回复

使用道具 举报

17#
发表于 2025-3-5 12:34:12 | 只看该作者
问题发现了:
IFEX $%JN%=2,ENVI @%Edit2=狗
IFEX $%JN%=3,ENVI @%Edit2=猪

多了:%
=======================
下面就行了:
TEAM ENVI^ ENVIMODE=1| ENVI^ FORCELOCAL=1
DOW1
_SUB DOW1,W380H98
    LABE LABE1,L12T18W152H24,请输入年龄:,,,18
    EDIT Edit1,L144T16W44H30,,CALL DOW2,,,18
    RADI Radio1,L196T10W40H20,周岁,CALL DOW2,1
    RADI Radio2,L196T34W40H20,虚岁,CALL DOW2,0
    LABE LABE2,L240T18W100H24,属相是:,,,18
    EDIT Edit2,L328T16W30H30,,,-,,18
_END

_SUB DOW2
    DATE JY y
    IFEX $%Radio1.Check%=1,ENVI NL=%Edit1%! ENVI NL=%Edit1%+1
    CALC JS=%JY%-%NL%
    CALC JN=MOD(%JS%,12)
    IFEX $%JN%=1,ENVI @Edit2=鸡
    IFEX $%JN%=2,ENVI @Edit2=狗
    IFEX $%JN%=3,ENVI @Edit2=猪
    IFEX $%JN%=4,ENVI @Edit2=鼠
    IFEX $%JN%=5,ENVI @Edit2=牛
    IFEX $%JN%=6,ENVI @Edit2=虎
    IFEX $%JN%=7,ENVI @Edit2=兔
    IFEX $%JN%=8,ENVI @Edit2=龙
    IFEX $%JN%=9,ENVI @Edit2=蛇
    IFEX $%JN%=10,ENVI @Edit2=马
    IFEX $%JN%=11,ENVI @Edit2=羊
    IFEX $%JN%=0,ENVI @Edit2=猴
_END

点评

ge
67/68是不是屬狗和豬的?在控件名前多了個%就不正常了?  详情 回复 发表于 2025-3-5 13:09
ge
好像是多餘的,以前看到了,沒有注意,把%去掉吧  详情 回复 发表于 2025-3-5 13:02
回复

使用道具 举报

18#
 楼主| 发表于 2025-3-5 12:59:44 | 只看该作者
yyz2191958 发表于 2025-3-5 11:46
有BUG,比如 67、68 虚岁就没有显示,能不能修改一下谢谢

我這正常呀!
回复

使用道具 举报

19#
 楼主| 发表于 2025-3-5 13:02:43 | 只看该作者
yyz2191958 发表于 2025-3-5 12:34
问题发现了:
IFEX $%JN%=2,ENVI @%Edit2=狗
IFEX $%JN%=3,ENVI @%Edit2=猪

好像是多餘的,以前看到了,沒有注意,把%去掉吧
回复

使用道具 举报

20#
 楼主| 发表于 2025-3-5 13:03:43 | 只看该作者

客氣了!這沒有什麼,多看看幫助和實例就差不多了
回复

使用道具 举报

21#
 楼主| 发表于 2025-3-5 13:09:56 | 只看该作者
yyz2191958 发表于 2025-3-5 12:34
问题发现了:
IFEX $%JN%=2,ENVI @%Edit2=狗
IFEX $%JN%=3,ENVI @%Edit2=猪

67/68是不是屬狗和豬的?在控件名前多了個%就不正常了?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-12-14 02:36

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表