0卡布奇诺
2018-04-13 13:40
采纳率: 100%
浏览 2.0k

C#带返回类型的类方法,求大拿指点

定义了一个bool类型的方法,想要的结果是;第一次进来开始计时,并返回false,3秒后返回true;
但在实际应用中发现,不能多次调用,一致返回false;不会为true;
求解决办法~!
public bool TimeOut5S(bool list)
{
bool Ret = true;
if (list && Ret)
{
OldTick = System.Environment.TickCount;
Ret = false;
}
else if (System.Environment.TickCount - OldTick > 3000)
{
Ret = true;
}
return Ret;

}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • freedombabyliang 2018-04-18 01:11
    已采纳

    你的意思是第一次进来的时候返回false,之后的进来3秒之后返回true是吗?可以设置一个全局变量来作为第一次进来的依据判断不就简单很多了吗,
    public static string number=“first”;
    public bool TimeOut5S(bool list)
    {
    if(number==first)
    {
    number=Two;
    Ret = false;
    }
    else
    {
    if(System.Environment.TickCount - OldTick > 3000)
    {
    Ret = true;
    }
    return Ret;
    }
    }

    点赞 1 打赏 评论
  • blownewbee 2018-04-13 15:38
     DateTime dt;
    public bool TimeOut5S(bool list)
    {
    if (list) dt = DateTime.Now;
    return (new TimeSpan(DateTime.Now.Tick - dt.Tick).TotalSeconds > 3);
    }
    
    点赞 打赏 评论

相关推荐 更多相似问题