明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3261|回复: 20

想做一个自动运行的提醒程序,希望大家帮助。

  [复制链接]
发表于 2011-1-21 20:33:41 | 显示全部楼层 |阅读模式
在公司里大家都得值日打扫卫生,我想这是一件非常普通的事情,但是我这个人记性不好因此我就想写这么一个程序提醒自己在一个特定时间里该我值日,但是我的能力有限这里有两个问题是我解决不了的,希望借助明经论坛上的朋友们们的力量实现这个程序。
第一个问题:这个程序必须是一打开AutoCAD随着程序自动运行的,我这里指的是自动运行并非自动加载。
第二个问题:比如我是每个星期五值日,如何确定这天是星期五呢。考虑到闰年的情况一年并非365天(其中节假日都不考虑)
我的想法是用系统变量“cdata”来获取年月日,然后确定那一天是星期五,如果这天是星期五我就运行一个Alert提醒,如果这天不是星期五就不运行Alert。
希望各位朋友能够帮助我。尤其是第一个问题,最好能举个实例,谢谢。
发表于 2011-1-21 20:49:43 | 显示全部楼层
飞诗的那个党不会亏待你的那个就行,自己改一下就可以用了
发表于 2011-1-21 22:43:39 | 显示全部楼层
将下面这句加在acad.mnl文件尾部就可以了。
(if (= (rem(fix(getvar"DATE")) 7) 4) (alert "今天你值日\n好好干哟!"))

评分

参与人数 1金钱 +10 收起 理由
露水2 + 10

查看全部评分

 楼主| 发表于 2011-1-22 08:23:53 | 显示全部楼层
回复 ZZXXQQ 的帖子

谢谢你的回复!
但是我要说的是,你这个程序本身是有问题的:
1.(getvar "cdate")得到的是一个字符串,用fix来求整数部分是行不通的。先得用atof转化一下。
2.fix得到的是年月日,你用这个数值除以7来求余显然是不合理的。
还是很谢谢你的回复!
发表于 2011-1-22 09:09:42 | 显示全部楼层
(rem (fix (getvar"DATE")) 7)
(getvar "CDATE") /= (getvar"DATE")
发表于 2011-1-22 09:19:15 | 显示全部楼层
如果没有打开CAD你就用不上了...建议还是搞个EXE文件自运行较妥...
 楼主| 发表于 2011-1-22 12:38:43 | 显示全部楼层
唉!高人在真是不得不服啊。你说的是对的,是有date系统变量,我刚才查询了一下date的值是:2455584〈用fix去掉了小数点部分〉,这个数值压根就不像日期和时间啊。那么这个数值就不知道该如何解释?我想这个数值还会和后面的求余有联系吧?能不能给我解释一下如何让程序自动运行,我写了一段aler代码添加到acaddoc.lsp,重启CAD后发现没什么变化,在新建一张图也没有aler警告。
谢谢你,又长见识了。
发表于 2011-1-22 13:06:12 | 显示全部楼层
chengx2000 发表于 2011-1-22 12:38
唉!高人在真是不得不服啊。你说的是对的,是有date系统变量,我刚才查询了一下date的值是:2455584〈用fix ...

不到星期五是没反映的。你改下系统日期试试。
 楼主| 发表于 2011-1-22 13:21:17 | 显示全部楼层
回复 ZZXXQQ 的帖子

请着重给我解释一下它的计算方法,自动运行我已经搞定了,谢谢你。
 楼主| 发表于 2011-1-22 13:25:13 | 显示全部楼层
我刚才试了一下,发现了求余后是星期五,但是今天实际上是星期六,能不能解释一下这个程序的计算原理,谢谢了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-6-12 07:11 , Processed in 0.175663 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表