请选择 进入手机版 | 继续访问电脑版

马上加入IBC程序猿 各种源码随意下,各种教程随便看! 注册 每日签到 加入编程讨论群

C#教程 ASP.NET教程 C#视频教程程序源码享受不尽 C#问题入口 ASP.NET问题入口

【C#问题提交】 社群合作 申请版主 程序开发 【远程协助】 每天乐一乐 每日签到 【承接毕业设计】 面试-葵花宝典下载

官方一群:

官方二群:

查看: 3827|回复: 8

关于C#的Timer空间制作倒计时的问题

  [复制链接]
  • TA的每日心情
    奋斗
    2015-8-12 01:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    2

    主题

    12

    帖子

    59

    积分

    注册会员

    Rank: 2

    积分
    59
    发表于 2015-8-9 21:24:03 | 显示全部楼层 |阅读模式

    马上加入IBC,查看更多教程

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    如题,比如说我载入一个窗体,点击一个按钮,或者在载入窗体的时候就自动启动这个Timer的控件

    然后在规定时间内销毁此窗体

    假设:
    在打开窗体之后,label提示“软件打开后在75秒内未登入,将自动关闭。。。”

    现在问题来了 - -
    75秒,需要利用Timer实现倒计时的功能,并且75随时间而变化,知道变成1秒的时候,窗口销毁。。。


    不知道思路理清楚没有,求大神解答!!!
  • TA的每日心情
    开心
    前天 19:06
  • 签到天数: 1469 天

    [LV.10]以坛为家III

    1177

    主题

    3082

    帖子

    9万

    积分

    管理员

    IBC编程社区-原道楠

    Rank: 9Rank: 9Rank: 9

    积分
    94058

    推广达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2015-8-9 21:30:19 | 显示全部楼层
    首先拉一个Timer 控件,然后设置属性 Enabled=true  ,Interval =1000  然后在窗体加载事件里 写 timer1.Start();  然后声明公共变量 int i = 75 , 然后在timer的事件中写代码
    完整代码如下:
    [C#] 纯文本查看 复制代码
      private void Form1_Load(object sender, EventArgs e)
            {
                timer1.Start();
            }
            int i =75;
            private void timer1_Tick(object sender, EventArgs e)
            {
                i--;
                if (i == 0)
                {
                    Application.Exit();
                }
            }


    C#论坛 www.ibcibc.com IBC编程社区
    C#
    C#论坛
    IBC编程社区
  • TA的每日心情
    奋斗
    2015-8-12 01:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    2

    主题

    12

    帖子

    59

    积分

    注册会员

    Rank: 2

    积分
    59
     楼主| 发表于 2015-8-9 21:48:11 | 显示全部楼层
    ibcadmin 发表于 2015-8-9 21:30
    首先拉一个Timer 控件,然后设置属性 Enabled=true  ,Interval =1000  然后在窗体加载事件里 写 timer1.Sta ...

    再请问下,,,如果我需要这个75秒倒计时的时间可视在窗口上,加个label的标签,这个需要怎么写?
  • TA的每日心情
    奋斗
    2015-8-12 01:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    2

    主题

    12

    帖子

    59

    积分

    注册会员

    Rank: 2

    积分
    59
     楼主| 发表于 2015-8-9 21:53:30 | 显示全部楼层
    ibcadmin 发表于 2015-8-9 21:30
    首先拉一个Timer 控件,然后设置属性 Enabled=true  ,Interval =1000  然后在窗体加载事件里 写 timer1.Sta ...

    我照着在Timer的属性上吧Interval改成1000,打开窗口后就照着1秒关闭了,需要我手动设置成75000 - - 才在75秒后关闭
  • TA的每日心情
    开心
    前天 19:06
  • 签到天数: 1469 天

    [LV.10]以坛为家III

    1177

    主题

    3082

    帖子

    9万

    积分

    管理员

    IBC编程社区-原道楠

    Rank: 9Rank: 9Rank: 9

    积分
    94058

    推广达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2015-8-9 22:18:40 | 显示全部楼层
    dasu 发表于 2015-8-9 13:53
    我照着在Timer的属性上吧Interval改成1000,打开窗口后就照着1秒关闭了,需要我手动设置成75000 - - 才在 ...

    不行 那个就要设置1000  1000 代表一秒执行一次,
    如果要在界面上显示倒计时的话 就拉个label  然后在timer的事件里 给lable赋值  赋的值就是i.toString();
    C#论坛 www.ibcibc.com IBC编程社区
    C#
    C#论坛
    IBC编程社区
  • TA的每日心情
    奋斗
    2015-8-12 01:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    2

    主题

    12

    帖子

    59

    积分

    注册会员

    Rank: 2

    积分
    59
     楼主| 发表于 2015-8-9 22:48:23 | 显示全部楼层
    ibcadmin 发表于 2015-8-9 22:18
    不行 那个就要设置1000  1000 代表一秒执行一次,
    如果要在界面上显示倒计时的话 就拉个label  然后在ti ...

    C:\Users\Administrator\Desktop\S9AOJBUA04T0)3IFK_2%5DD_U.jpg
    不知道这样错了没有,我点击运行的时候一秒时间就直接销毁了
  • TA的每日心情
    奋斗
    2015-8-12 01:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    2

    主题

    12

    帖子

    59

    积分

    注册会员

    Rank: 2

    积分
    59
     楼主| 发表于 2015-8-9 22:49:13 | 显示全部楼层
    [C#] 纯文本查看 复制代码
        private void Form1_Load(object sender, EventArgs e)
            {
                timer1.Start();
                
            }
            int i = 60;
            private void timer1_Tick(object sender, EventArgs e)
            {
                i--;
                label2.Text = i.ToString();
                if (i == 0) ;
                {
                    Application.Exit();
                }
            }
  • TA的每日心情
    奋斗
    2015-8-12 01:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    2

    主题

    12

    帖子

    59

    积分

    注册会员

    Rank: 2

    积分
    59
     楼主| 发表于 2015-8-9 22:53:00 | 显示全部楼层
    ibcadmin 发表于 2015-8-9 22:18
    不行 那个就要设置1000  1000 代表一秒执行一次,
    如果要在界面上显示倒计时的话 就拉个label  然后在ti ...

    好吧!刚刚我把两张代码截图对比了一下,发现是我在if() 这个判断语句这边多了个分号,所以会这样子,已经解决了。十分感谢!
  • TA的每日心情
    开心
    前天 19:06
  • 签到天数: 1469 天

    [LV.10]以坛为家III

    1177

    主题

    3082

    帖子

    9万

    积分

    管理员

    IBC编程社区-原道楠

    Rank: 9Rank: 9Rank: 9

    积分
    94058

    推广达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2015-8-10 09:21:13 | 显示全部楼层
    dasu 发表于 2015-8-9 14:53
    好吧!刚刚我把两张代码截图对比了一下,发现是我在if() 这个判断语句这边多了个分号,所以会这样子,已 ...

    OK.以后问题要发在求助板块。
    C#论坛 www.ibcibc.com IBC编程社区
    C#
    C#论坛
    IBC编程社区
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则