| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 567 人关注过本帖
标题:倒计时,求编程
只看楼主 加入收藏
kuugaangela
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-5-11
结帖率:0
收藏
已结贴  问题点数:10 回复次数:5 
倒计时,求编程
之前做了一个倒计时
set date to short
set hours to 24
t1=str(ctot("2014-05-01 0:01") -datetime())
thisform.label1.caption="离2014年5月1号 还有"+t1+"秒"
输出的是以秒为单位的,现在想改成显示 日 小时 分 秒
求大神搭救~~~
2014-05-11 16:08
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:4 
程序代码:
ldDate={^2014-06-01 00:00:00}
lnSec=ldDate-Datetime()
lnHour=Int(lnSec/3600) && 时
lnMinute=Int((lnSec-lnHour*3600)/60) && 分
lnSec=lnSec%60 &&=MessageBox(Transform(lnHour)+"小时"+Transform(lnMinute)+"分"+Padl(lnSec,2,"0")+"秒")

坚守VFP最后的阵地
2014-05-11 17:08
kuugaangela
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-5-11
收藏
得分:0 
回复 2 楼 sdta
不好意思,我按照您的做,只是会不断的弹出一个窗口显示时间,关了又弹。而且我希望应该是这样的
图片附件: 游客没有浏览图片的权限,请 登录注册
,在一个窗口不断的跳动时间,可以吗?
2014-05-11 17:46
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
把代码放在表单中计时器控件的Timer事件中
设置计时器控件属性 InterVal=1000

建议楼主还是从基础开始学吧

坚守VFP最后的阵地
2014-05-11 18:00
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:4 
以下是引用kuugaangela在2014-5-11 17:46:21的发言:

不好意思,我按照您的做,只是会不断的弹出一个窗口显示时间,关了又弹。而且我希望应该是这样的,在一个窗口不断的跳动时间,可以吗?
楼主变通下嘛 照抄不行
2014-05-11 19:28
liuxingang28
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:山东济南
等 级:贵宾
威 望:47
帖 子:658
专家分:2180
注 册:2014-2-7
收藏
得分:4 
在 sdta 版主的基础上修改:
1. 新建一个表单,在表单上添加一个 Label 用于显示结果信息。为了使结果信息对于窗口水平居中,可设 Label1.Width=Form1.Width,并设置 label1.Alignment=2(居中)
2. 在表单上添加一个 Timer,设置其 InterVal=500。为什么不设置成 1000(1秒)呢?这是为了防止定时器事件中的代码耗时较长时,造成查询结果未及时更新(间隔了1秒)。现在,每秒钟刷新 2 次,只要有 1 次执行成功即可确保正确显示。
3. 定时器的 Timer 事件如下:
程序代码:
#DEFINE DATE_51 {^2014.05.01 00:00:00}    && 定义目标日期常量
LOCAL nSeconds,nDay,nHour,nMinute,nSec
nSeconds = DATE_51 - DATETIME()           && 当前时间与目标日期之间相差的总秒数
nDay = INT(nSeconds/86400)                && 求相差天数
nSeconds = MOD(nSeconds,86400)            && 去掉天数剩余的秒数
nHour = INT(nSeconds/3600)                && 求相差小时数
nSeconds = MOD(nSeconds,3600)             && 修正剩余秒数
nMinute = INT(nSeconds/60)                && 求相差分钟数
nSec = MOD(nSeconds,60)                   && 剩余秒数
THISFORM.label1.Caption = '离2014年5月1日还有:'+TRAN(nDay)+''+TRAN(nHour)+''+;
    TRAN(nMinute)+''+TRAN(nSec)+''
图片附件: 游客没有浏览图片的权限,请 登录注册

注:上图是我将系统日期修改为2014.04.11日后的运行结果。


[ 本帖最后由 liuxingang28 于 2014-5-11 20:25 编辑 ]

泉城飞狐
2014-05-11 20:14
快速回复:倒计时,求编程
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028156 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved