如何编制定时提醒程序?如何让开始时运行程序。

snowmiao2002 2003-09-29 02:11:15
帮自己制作一个,小的任务管理工具,让他有自动事务提醒功能。
1、定时提醒,指定一个时间点
2、每日提醒
3、每周几提醒
4、先是每周提醒,要到最终日期时每日提醒,甚至每小时提醒

让程序运行在右下角那个地方。

如果用定时器不停的去比较时间,又有很多个任务时是不是太浪费系统(cup)时间了
...全文
167 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
libra163 2003-09-29
  • 打赏
  • 举报
回复
这么多人回答了,唉,占个地方都难啊,
接分吧。
cash2000 2003-09-29
  • 打赏
  • 举报
回复
加上一个接受消息的行数:
CONST
WM_SYSTRAYMSG=WM_USER+100;
....

public
{ Public declarations }
Procedure ModifyIcon(aMessage:DWORD);
procedure SysMessage(var message: TMessage); message WM_SYSTRAYMSG;
procedure AppOnMinimize(Sender: TObject);
end;

.....
procedure TfForm.SysMessage(var message: TMessage);
begin
with Message do
begin
if LParam= WM_LBUTTONDOWN then
begin
Application.Restore;
SetForegroundWindow(Handle);
Showwindow(Application.Handle, SW_NORMAL );
Showwindow(Application.Handle, SW_SHOW);
end;
end;
end;
procedure TfForm.FormCreate(Sender: TObject);
begin
ModifyIcon(NIM_ADD);
end;
cash2000 2003-09-29
  • 打赏
  • 举报
回复
有下图标
ModifyIcon(aMessage:DWORD);
var
aszTip : string;
begin
aszTip:='任务管理';
pnid.cbSize:=sizeof(_NOTIFYICONDATA);
pnid.Wnd:=Handle;
pnid.uID:=0;
pnid.uFlags:=NIF_TIP Or NIF_ICON OR NIF_MESSAGE;
pnid.hIcon:=Application.Icon.Handle;
strcopy(pnid.szTip,Pchar(aszTip));
// pnid.uCallbackMessage:=WM_LBUTTONDOWN;
pnid.uCallbackMessage:=WM_SYSTRAYMSG;
Shell_NotifyIcon(aMessage,@pnid);
end;
IORILI 2003-09-29
  • 打赏
  • 举报
回复
至于你想每日、每周提醒的话,那就在控制面板里,启动任务计划,然后选你作的小系统,然后设置启动的时间,不就搞定了???/
赫赫,省时省力,一举两得
sheepcyk 2003-09-29
  • 打赏
  • 举报
回复
在注册表中写一些东西就可以自动运行了。
IORILI 2003-09-29
  • 打赏
  • 举报
回复
用timer控件不好,建议你找个第三方控件,我以前看到过有个时间控件,读取系统的时间,到秒,并且具有秒表的功能,呵呵,说得不好
dickeybird888 2003-09-29
  • 打赏
  • 举报
回复
哈哈我来接分
tongki 2003-09-29
  • 打赏
  • 举报
回复
参考:http://expert.csdn.net/Expert/topic/2110/2110416.xml?temp=.9436304
sailer_shi 2003-09-29
  • 打赏
  • 举报
回复
你可以定义提醒的时间呀,然后在程序中用TTimer来进行比较,在托盘中显示的话要写代码的,或者用控件,如果让程序开机自动运行的话,要在注册表中写一些信息,就可以了,但是如果你的这个程序关闭的话将不能进行提醒了,你说对了,十分浪费系统资源的,我以前做的计划任务,最后还是因为这点最终失败了,你说的功能我做的都有,而且还有一个非常好的日历控件,可以显示农历,每一个节日都有,你要是能解决消耗系统资源的问题后请教教我好吗? :)

Gool Luck
swordman119 2003-09-29
  • 打赏
  • 举报
回复
你可以记录下程序启动后运行的时间,比如说程序运行N小时后就提醒你N次,不知道这样能不能满足你每小时提醒的要求?
  • 打赏
  • 举报
回复
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
█████████开机自动运行自身██████████
〓〓〓〓〓Ghyghost(著名关心CSDN结贴率爱国代表)〓〓〓〓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡

uses registry;

procedure autorun();
Var
ghyghost:TRegistry;
begin
ghyghost:=TRegistry.Create;
ghyghost.RootKey:=HKEY_LOCAL_MACHINE;
ghyghost.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run',True);
ghyghost.WriteString('systemtray','"'+ExtractFilepath(ParamStr(0))+ExtractFilename(ParamStr(0))+'"');
ghyghost.Free;
end;


上面为开机自动运行自身的程序,,,

你时间方面的要求实现很简单
就是“时间的比较”,
如果系统时间和你设置的时间相同
就执行不同的任务。。
祝苗苗妹开开心心:)
snowmiao2002 2003-09-29
  • 打赏
  • 举报
回复
不好意思写错了,让程序开机的时候自动执行。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧