现在做个补充:我出现失灵是因为代码被复制粘帖后,有变量的那些行,每一行都要重新在末尾按下回车,否则代码失灵。最好是粘帖后每行都试试回车再退格。
我也是新手,昨天遇到相同的问题,通过几个测试稍微弄明白了一点。结果如下:
.子程序 _状态_被单击
.如果 (状态界面.可视 = 假)
载入 (状态界面, 主界面, 假)
状态界面.可视 = 真
.否则
状态界面.销毁 ()
.如果结束
.子程序 _阵型_被单击
.如果 (阵型界面.可视 = 假)
载入 (阵型界面, 主界面, 假)
阵型界面.可视 = 真
.否则
阵型界面.销毁 ()
.如果结束
此时代码正常并保存经过两天。
让后加入:
不论加入哪个按钮下都将导致该按钮直接失灵,调试运行时既不弹出界面窗口也不弹出信息框。
然后将其中一个界面框的代码复制到另一个按钮下,如下:
.子程序 _状态_被单击
计数 = 取小时 (取现行时间 ()) × 100 + 取分钟 (取现行时间 ()) × 20 + 取秒 (取现行时间 ()) × 1
信息框 (计数, 0, , )
.子程序 _阵型_被单击
.如果 (阵型界面.可视 = 假)
载入 (阵型界面, 主界面, 假)
阵型界面.可视 = 真
.否则
阵型界面.销毁 ()
.如果结束
.如果 (状态界面.可视 = 假)
载入 (状态界面, 主界面, 假)
状态界面.可视 = 真
.否则
状态界面.销毁 ()
.如果结束
全部运行成功,三个窗口都能弹出。
再讲代码写会原位,如下:
.子程序 _状态_被单击
.如果 (状态界面.可视 = 假)
载入 (状态界面, 主界面, 假)
状态界面.可视 = 真
.否则
状态界面.销毁 ()
.如果结束
计数 = 取小时 (取现行时间 ()) × 100 + 取分钟 (取现行时间 ()) × 20 + 取秒 (取现行时间 ()) × 1
信息框 (计数, 0, , )
.子程序 _阵型_被单击
.如果 (阵型界面.可视 = 假)
载入 (阵型界面, 主界面, 假)
阵型界面.可视 = 真
.否则
阵型界面.销毁 ()
.如果结束
此时,不论信息框是否存在,和在任意按钮的代码里,三个窗口都能正常弹出。
我用的是5.9版。
是不是载入后又重复载入?是不是应该加上句 是否已创建() 判断一下窗口是不是存在?
应该是代码的漏洞吧。
还有你的系统是window7吧,我用windows7的时候也会出现一些小问题,比如左键按下,事件直接没反应,XP的就完全没问题,或者是你电脑中只有一个易语言,却好几个系统调用它,都会出现这种问题
我记得在网上看世宝的视频的时候 也出现过代码不正常的现象 当时世宝也不知道是什么原因 后来世宝使用了备份代码才把视频做完 当时世宝也没说是什么原因导致的 他只是说可能是他按了键了吧 反正他一口咬定说代码是他自己弄坏的 也许易语言真的存在某些漏洞吧 世宝把出问题的责任都推到自己的身上 说是他自己不小心才把代码弄坏的 他可能不想破坏易语言的名声吧 所以才把错都推给了自己吧 易语言从诞生到现在才经历了10年多的时间 很多地方的技术都还不太成熟 所一说了有点问题一是正常的 继续支持易语言吧随着版本的升级 这些小问题一定能解决的 想避免这些问题也是可以的 就比如说可以像世宝那样做好备份 还有就是当你保存文件的时候 不要反复区覆盖源文件 多保存几个文件 有时一个文件要是被反复读写 也会造成文件损坏或文件部分损坏和丢失其中某一部分 所以说了这种问题不一定就是100%易语言自己造成的 备份才是最安全的方法
因为你已经让逻辑变量=真了,你得有命令让逻辑变量=假否则程序只知道真载入窗口1,他不知道假载入窗口2
的确,但用 如果真 出错几率很少