精易论坛

标题: 大神们帮忙看看这是什么情况? [打印本页]

作者: 天之痕云之遥    时间: 2024-3-14 23:04
标题: 大神们帮忙看看这是什么情况?

求解,图1是另一个软件传来的数据,放入的maintainInfos数组中,数组数据是在内存中,显示是在超级列表框里,图2是每10秒判断现在时间是否大于计划开始时间20分钟,如果是,就在是否签到栏填写是并记录超时,退出账号登录另一个账号后(销毁窗口,载入登录窗口,主程序并未结束),上一个账号是否签到栏有文本的就清除,没文本的就留下,证明时间未到,但是如图3,结果还是给自动签到判定超时了,不知道是什么情况

作者: 风度猫    时间: 2024-3-14 23:56
代码逻辑没错啊  25年这个 你之前数据 第四列 是空  所以符合没签到的第一个判断   然后 你判断大于20分钟 25年 和24年肯定大于20分钟了  然后你把第四列有置了个签到  是你自己逻辑乱了把 自己再捋捋
作者: 喵藏    时间: 2024-3-14 23:58
  
子程序名返回值类型公开备 注
时间判断  
变量名类 型静态数组备 注
t整数型 
t = GetTickCount ()
判断循环首 ()
如果真 (GetTickCount () - t ≥ 10 × 1000)  ' 10秒
跳出循环 ()
如果真 (GetTickCount () - t ≥ 10 × 60 × 1000)  ' 10分钟
跳出循环 ()

判断循环尾 ()


用这个判断时间
作者: 天之痕云之遥    时间: 2024-3-15 00:08
风度猫 发表于 2024-3-14 23:56
代码逻辑没错啊  25年这个 你之前数据 第四列 是空  所以符合没签到的第一个判断   然后 你判断大于20分钟  ...

我也不知道该怎么写,就是想要现在的时间和计划开始的时间对比,如果现在的时间比,在计划开始的时间基础上+20分钟还大的话,才执行超时自动签到记录的操作
作者: 风度猫    时间: 2024-3-15 00:18
天之痕云之遥 发表于 2024-3-15 00:08
我也不知道该怎么写,就是想要现在的时间和计划开始的时间对比,如果现在的时间比,在计划开始的时间基础 ...

当前时间24年 你计划时间25年...不就比当前时间大20小时吗?  我都给你绕晕了 不知道你要表达啥意思了
作者: Suky    时间: 2024-3-15 00:25
贴出的代码没发现问题,建议检查程序其他部分
作者: 天之痕云之遥    时间: 2024-3-15 00:38
风度猫 发表于 2024-3-15 00:18
当前时间24年 你计划时间25年...不就比当前时间大20小时吗?  我都给你绕晕了 不知道你要表达啥意思了 ...

比如计划时间是2024年3月14日10点0分,现在时间是2024年3月14日10点0分,那么计划开始了,如果在2024年3月14日10点21分以后自动记录签到超时,20分以前都不会记录超时
作者: 风度猫    时间: 2024-3-15 00:51
天之痕云之遥 发表于 2024-3-15 00:38
比如计划时间是2024年3月14日10点0分,现在时间是2024年3月14日10点0分,那么计划开始了,如果在2024年3 ...

我跟你真解释不明白了  你代码逻辑写的没错  明白吗?   我就问你 计划时间25年   当前的时间24年  这中间 大于20分钟不大于?  你咋还不明白   你代码对着呢   是你自己先想清楚自己要求

作者: Suky    时间: 2024-3-15 00:54
风度猫 发表于 2024-3-15 00:51
我跟你真解释不明白了  你代码逻辑写的没错  明白吗?   我就问你 计划时间25年   当前的时间24年  这中间 ...

他说的应该是楼主楼层里发的图3那个情况

补充内容 (2024-3-15 00:55):
所以我建议他检查其他地方的代码,而不是纠结贴出来的这一点
作者: 天之痕云之遥    时间: 2024-3-15 01:00
风度猫 发表于 2024-3-15 00:51
我跟你真解释不明白了  你代码逻辑写的没错  明白吗?   我就问你 计划时间25年   当前的时间24年  这中间 ...

那我应该改成<20分钟吗?如果是小于的话,是不是就不会自动超时记录了?
作者: 风度猫    时间: 2024-3-15 01:00
天之痕云之遥 发表于 2024-3-15 00:38
比如计划时间是2024年3月14日10点0分,现在时间是2024年3月14日10点0分,那么计划开始了,如果在2024年3 ...

我好像的确看错了  抱歉  你看下是不是超列取错了?
如楼上所说看下其他地方代码  然后 调试输出下 看看到底 执行到哪一步错的吧
作者: 风度猫    时间: 2024-3-15 01:01
天之痕云之遥 发表于 2024-3-15 01:00
那我应该改成<20分钟吗?如果是小于的话,是不是就不会自动超时记录了? ...



作者: 风度猫    时间: 2024-3-15 01:05
我大概猜到了,,,估计你数组和超列的数据不一样 没同步....
作者: 天之痕云之遥    时间: 2024-3-15 01:06
Suky 发表于 2024-3-15 00:54
他说的应该是楼主楼层里发的图3那个情况

补充内容 (2024-3-15 00:55):

对,我就很纳闷儿,计划时间都还没有到,何来的超时签到一说呢?
作者: 天之痕云之遥    时间: 2024-3-15 01:10
风度猫 发表于 2024-3-15 01:05
我大概猜到了,,,估计你数组和超列的数据不一样 没同步....

大神,其实结合这篇帖子应该能叙述清楚https://125.confly.eu.org/forum.php?mod=viewthread&tid=14814603
作者: 1752328925    时间: 2024-3-15 02:24
我这代码没毛病
作者: 天之痕云之遥    时间: 2024-3-15 19:25
风度猫 发表于 2024-3-15 01:01


大神,找到原因了,重新载入后超级列表框的内容输出成100年1月1日,10秒后就恢复正常了,这是怎么回事喃?


补充内容 (2024-3-15 19:26):
10秒后就恢复成超级列表框里的数据了,但是这个时候程序已经被记录超时了
作者: 风度猫    时间: 2024-3-15 19:39
天之痕云之遥 发表于 2024-3-15 19:25
大神,找到原因了,重新载入后超级列表框的内容输出成100年1月1日,10秒后就恢复正常了,这是怎么回事喃 ...

时间格式 不对,  到时间的函数介绍里看下  能转换的时间格式 一一对应下




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4