刚才俺突发奇想,,,,,,,,,,,,,

时间:2022-09-26 09:21:55
我想做个小程序,,,运行时取系统时间,然后每隔四十分钟,就会弹出一个对话框,显示:"休息一下",,这应该怎么实现呢,DELPHI里有直接这样的控件吗???没有的话用程序应该怎么完成呢,,,
还有,大家不要笑我啊,哈哈

45 个解决方案

#1


想法还不少呢

用一个timer组件设置Interval属性=40000

procedure TForm1.Timer1Timer(Sender: TObject);
begin
showmessage( '休息一下' );
end;

#2


放一个Timer控件,Interval属性设置2400000,在Ontimer事件里写showmessage('休息一下');

#3


Interval属性=40000
Interval属性设置2400000

=========================
这个间隔是以什么来计呢,是秒吗?四十分钟那应该是2400啊,还是按什么来计呢?这个值到底应该多少呢

#4


哦,刚才查了一下,是毫秒计算的,那一秒等于多少毫秒啊,六十吗????
那个大家不要笑俺啊,

#5


40分钟啊 我刚才看错了

Interval:=1000*60*40; 这样你可以看明白了

#6


......1秒=1000毫秒...
之前回答的设为40000很明显是他看错了...

#7


一秒等于一千毫秒.....

提议:
一、不固定间隔时间,设成由用户输入好了;
二、最好能隐藏起来,在托盘显示个图标好了;
三、加入固定时间的提示,如:12:00时,提示:下班吃午餐了。

#8


hongqi162(失踪的月亮) ( ) 信誉:105    Blog   加为好友  2007-06-20 09:59:20  得分: 0  
 
 
   想法还不少呢

用一个timer组件设置Interval属性=40000

procedure TForm1.Timer1Timer(Sender: TObject);
begin
showmessage( '休息一下' );
end;
  
 
===============================================
还得保证程序能置顶吧,不然程序如果在后台运行,showmessage也是在后台的

#9


提议:
一、不固定间隔时间,设成由用户输入好了;
二、最好能隐藏起来,在托盘显示个图标好了;
三、加入固定时间的提示,如:12:00时,提示:下班吃午餐了。


===================================
这个提议赞一下,但是对俺太菜不知道怎么样实现

#10


还得保证程序能置顶吧,不然程序如果在后台运行,showmessage也是在后台的
====================================
俺太菜,

#11


在托盘显示个图标好了,Timer事件唤醒托盘......

var
  Ht:HWnd;
..
..
procedure TForm1.Timer1Timer(Sender: TObject);
begin
 ..
 ..
  Ht:=findwindow(nil,pchar('Project1'));
  if  Ht<>0   then
  showWindow(Ht,SW_SHOWDEFAULT);
  showmessage( '休息一下' );

end;

#12


感谢大家的帮忙啊,,,上面的程序我没有看懂,我太菜了,简单地比较适合俺,,,
最后一个问题,,
我在页面上又加了一个Lable,想让它显示时间,写了语句没好使,

Label1.Caption:=now;

这个应该怎么改一下呢,

#13


Label1.Caption:=Formatdatetime('YYYY-MM-DD HH:NN:SS',now);

#14


那个我想要显示会动的时间,

#15


Label1.Caption:=Formatdatetime('YYYY-MM-DD HH:NN:SS',now);这个不会动

#16


const m = 20    '每隔20分钟提醒一次

While(1)
    WScript.Sleep( m*60*1000 )
    MsgBox "请活动一下您的颈部。^_^", vbOkOnly, "贴心小护士"
WEnd

小段的VBS就实现了

#17


那个我想要显示会动的时间,

#18


procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label1.Caption:=Formatdatetime('YYYY-MM-DD HH:NN:SS',now);
end;
没机子可调试,你试试.

#19


哦,放在那里啊,,
那我就再加一个时钟控件,就可以了我想

#20


好啊,做好了我用用哦,呵呵

#21


行啊没问题,,大家要是不嫌我这个菜地话,我就上传到资源里,不过太菜了,我怕丢人哈哈

#22


再加点功能:
程序运行后,新建一个桌面,到了时间就切换到新建桌面上
到时候想不休息都不行

#23


又想到一个功能:
切换到新桌面以后,在新桌面上运行一个播放器,
放点A、B、C片,
这下可以更好的休息

#24


比较可爱的初学者

#25


是比较无聊的初学者,,不干活整一上午这个了

加分加分啦,,,出问题了,得加分接着问了,,

现在就是程序运行时,把程序最小化之后它就到任务栏上了嘛,然后到时间了它弹出对话框的时候我也看不到啊,,,,只有把程序还原到正常大小的时候才能看到它弹没弹,,那这个程序根本也不过关啊,,,,,得让它到时间以后,弹出对话框的时候得到所有页面的顶部啊,,那让我才能看到啊,

大家再帮帮忙啊,,,,

#26


哈哈哈 

很聪明
希望你能实现啊
实现了也给我发一个啊
我也想用那个"软件"

呵呵

#27


又想到一个功能:
切换到新桌面以后,在新桌面上运行一个播放器,
放点A、B、C片,
这下可以更好的休息



...................

大头鸟注意身体啊, 哈哈~~~~~~~~~~~~~~~

#28


呵呵,好学生,

#29


能实现了,上边的都

#30


上午问的那些都实现了,,现在的问题是这个

------------------------------------------------------------------------------
现在就是程序运行时,把程序最小化之后它就到任务栏上了嘛,然后到时间了它弹出对话框的时候我也看不到啊,,,,只有把程序还原到正常大小的时候才能看到它弹没弹,,那这个程序根本也不过关啊,,,,,得让它到时间以后,弹出对话框的时候得到所有页面的顶部啊,,那让我才能看到啊,
--------------------------------------------------------------------------------

还有 oyb330(不养鱼的鱼缸)的提议,很好我也想实现

一、不固定间隔时间,设成由用户输入好了;
二、最好能隐藏起来,在托盘显示个图标好了;
三、加入固定时间的提示,如:12:00时,提示:下班吃午餐了。

  
 

#31


我晕......

#32


直接在配置文件里写入各个时间点要做的动作和显示的话,然后到点程序就从配置文件里取,用户要修改的话,直接在配置文件里把话编辑一下,这样简单。。

#33


直接在配置文件里写入各个时间点要做的动作和显示的话,然后到点程序就从配置文件里取,用户要修改的话,直接在配置文件里把话编辑一下,这样简单。。
========================================
可我太菜了,更糊涂了

#34


最好能隐藏起来,在托盘显示个图标好了;
那个托盘是什么?我也想把程序隐藏起来,在QQ旁边能看到个小图标那样,然后到时间就能弹出对话框,让我看到,,,
====================================
那个我这个想法是不是太无聊了啊,,,大家不要笑我啊,还请大家能帮帮忙啊,

#35


《DELPHI 5开发人员指南》
第24章   扩展Windows外壳 795
24.1   托盘图标组件 795
24.1.1   API 795
24.1.2   处理消息 797
24.1.3   图标及提示 797
24.1.4   鼠标点击 798
24.1.5   隐藏应用程序 799
24.1.6   托盘图标应用程序举例 805

#36


我没有这本书现在,搜了一下,没找到能读的,,,你在哪看的啊,

#37


刚才找到了PDF下载,,,谢谢你的推荐,,,这本书的评价很高

#38


评价很高?



不是一般的高啊

#39


可惜这本书已经绝版了,买不到了,

#40


记录程序运行时间,然后用系统时间-不就行了,够40分钟进行一次提示,,…………………………~!

#41


记录程序运行时间,然后用系统时间

======================================
怎么样记录程序运行时间啊?

#42


得让它到时间以后,弹出对话框的时候得到所有页面的顶部啊,,那让我才能看到啊,
==========================================================================

var
  Ht:HWnd;
..
..
procedure TForm1.Timer1Timer(Sender: TObject);
begin
 ..
 ..
  Ht:=findwindow(nil,pchar('Project1'));
  if  Ht<>0   then
  showWindow(Ht,SW_SHOWDEFAULT);
  application.BringToFront;    //到所有页面的顶部
  showmessage( '休息一下' );

end;

#43


我还做了一个这样的程序,偶尔用用,嘿嘿~~

#44


可是我还没做出来呢,丢人,吼吼,

#45


谁知道在哪里还能买到《DELPHI 5开发人员指南》这本书吗?

#1


想法还不少呢

用一个timer组件设置Interval属性=40000

procedure TForm1.Timer1Timer(Sender: TObject);
begin
showmessage( '休息一下' );
end;

#2


放一个Timer控件,Interval属性设置2400000,在Ontimer事件里写showmessage('休息一下');

#3


Interval属性=40000
Interval属性设置2400000

=========================
这个间隔是以什么来计呢,是秒吗?四十分钟那应该是2400啊,还是按什么来计呢?这个值到底应该多少呢

#4


哦,刚才查了一下,是毫秒计算的,那一秒等于多少毫秒啊,六十吗????
那个大家不要笑俺啊,

#5


40分钟啊 我刚才看错了

Interval:=1000*60*40; 这样你可以看明白了

#6


......1秒=1000毫秒...
之前回答的设为40000很明显是他看错了...

#7


一秒等于一千毫秒.....

提议:
一、不固定间隔时间,设成由用户输入好了;
二、最好能隐藏起来,在托盘显示个图标好了;
三、加入固定时间的提示,如:12:00时,提示:下班吃午餐了。

#8


hongqi162(失踪的月亮) ( ) 信誉:105    Blog   加为好友  2007-06-20 09:59:20  得分: 0  
 
 
   想法还不少呢

用一个timer组件设置Interval属性=40000

procedure TForm1.Timer1Timer(Sender: TObject);
begin
showmessage( '休息一下' );
end;
  
 
===============================================
还得保证程序能置顶吧,不然程序如果在后台运行,showmessage也是在后台的

#9


提议:
一、不固定间隔时间,设成由用户输入好了;
二、最好能隐藏起来,在托盘显示个图标好了;
三、加入固定时间的提示,如:12:00时,提示:下班吃午餐了。


===================================
这个提议赞一下,但是对俺太菜不知道怎么样实现

#10


还得保证程序能置顶吧,不然程序如果在后台运行,showmessage也是在后台的
====================================
俺太菜,

#11


在托盘显示个图标好了,Timer事件唤醒托盘......

var
  Ht:HWnd;
..
..
procedure TForm1.Timer1Timer(Sender: TObject);
begin
 ..
 ..
  Ht:=findwindow(nil,pchar('Project1'));
  if  Ht<>0   then
  showWindow(Ht,SW_SHOWDEFAULT);
  showmessage( '休息一下' );

end;

#12


感谢大家的帮忙啊,,,上面的程序我没有看懂,我太菜了,简单地比较适合俺,,,
最后一个问题,,
我在页面上又加了一个Lable,想让它显示时间,写了语句没好使,

Label1.Caption:=now;

这个应该怎么改一下呢,

#13


Label1.Caption:=Formatdatetime('YYYY-MM-DD HH:NN:SS',now);

#14


那个我想要显示会动的时间,

#15


Label1.Caption:=Formatdatetime('YYYY-MM-DD HH:NN:SS',now);这个不会动

#16


const m = 20    '每隔20分钟提醒一次

While(1)
    WScript.Sleep( m*60*1000 )
    MsgBox "请活动一下您的颈部。^_^", vbOkOnly, "贴心小护士"
WEnd

小段的VBS就实现了

#17


那个我想要显示会动的时间,

#18


procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label1.Caption:=Formatdatetime('YYYY-MM-DD HH:NN:SS',now);
end;
没机子可调试,你试试.

#19


哦,放在那里啊,,
那我就再加一个时钟控件,就可以了我想

#20


好啊,做好了我用用哦,呵呵

#21


行啊没问题,,大家要是不嫌我这个菜地话,我就上传到资源里,不过太菜了,我怕丢人哈哈

#22


再加点功能:
程序运行后,新建一个桌面,到了时间就切换到新建桌面上
到时候想不休息都不行

#23


又想到一个功能:
切换到新桌面以后,在新桌面上运行一个播放器,
放点A、B、C片,
这下可以更好的休息

#24


比较可爱的初学者

#25


是比较无聊的初学者,,不干活整一上午这个了

加分加分啦,,,出问题了,得加分接着问了,,

现在就是程序运行时,把程序最小化之后它就到任务栏上了嘛,然后到时间了它弹出对话框的时候我也看不到啊,,,,只有把程序还原到正常大小的时候才能看到它弹没弹,,那这个程序根本也不过关啊,,,,,得让它到时间以后,弹出对话框的时候得到所有页面的顶部啊,,那让我才能看到啊,

大家再帮帮忙啊,,,,

#26


哈哈哈 

很聪明
希望你能实现啊
实现了也给我发一个啊
我也想用那个"软件"

呵呵

#27


又想到一个功能:
切换到新桌面以后,在新桌面上运行一个播放器,
放点A、B、C片,
这下可以更好的休息



...................

大头鸟注意身体啊, 哈哈~~~~~~~~~~~~~~~

#28


呵呵,好学生,

#29


能实现了,上边的都

#30


上午问的那些都实现了,,现在的问题是这个

------------------------------------------------------------------------------
现在就是程序运行时,把程序最小化之后它就到任务栏上了嘛,然后到时间了它弹出对话框的时候我也看不到啊,,,,只有把程序还原到正常大小的时候才能看到它弹没弹,,那这个程序根本也不过关啊,,,,,得让它到时间以后,弹出对话框的时候得到所有页面的顶部啊,,那让我才能看到啊,
--------------------------------------------------------------------------------

还有 oyb330(不养鱼的鱼缸)的提议,很好我也想实现

一、不固定间隔时间,设成由用户输入好了;
二、最好能隐藏起来,在托盘显示个图标好了;
三、加入固定时间的提示,如:12:00时,提示:下班吃午餐了。

  
 

#31


我晕......

#32


直接在配置文件里写入各个时间点要做的动作和显示的话,然后到点程序就从配置文件里取,用户要修改的话,直接在配置文件里把话编辑一下,这样简单。。

#33


直接在配置文件里写入各个时间点要做的动作和显示的话,然后到点程序就从配置文件里取,用户要修改的话,直接在配置文件里把话编辑一下,这样简单。。
========================================
可我太菜了,更糊涂了

#34


最好能隐藏起来,在托盘显示个图标好了;
那个托盘是什么?我也想把程序隐藏起来,在QQ旁边能看到个小图标那样,然后到时间就能弹出对话框,让我看到,,,
====================================
那个我这个想法是不是太无聊了啊,,,大家不要笑我啊,还请大家能帮帮忙啊,

#35


《DELPHI 5开发人员指南》
第24章   扩展Windows外壳 795
24.1   托盘图标组件 795
24.1.1   API 795
24.1.2   处理消息 797
24.1.3   图标及提示 797
24.1.4   鼠标点击 798
24.1.5   隐藏应用程序 799
24.1.6   托盘图标应用程序举例 805

#36


我没有这本书现在,搜了一下,没找到能读的,,,你在哪看的啊,

#37


刚才找到了PDF下载,,,谢谢你的推荐,,,这本书的评价很高

#38


评价很高?



不是一般的高啊

#39


可惜这本书已经绝版了,买不到了,

#40


记录程序运行时间,然后用系统时间-不就行了,够40分钟进行一次提示,,…………………………~!

#41


记录程序运行时间,然后用系统时间

======================================
怎么样记录程序运行时间啊?

#42


得让它到时间以后,弹出对话框的时候得到所有页面的顶部啊,,那让我才能看到啊,
==========================================================================

var
  Ht:HWnd;
..
..
procedure TForm1.Timer1Timer(Sender: TObject);
begin
 ..
 ..
  Ht:=findwindow(nil,pchar('Project1'));
  if  Ht<>0   then
  showWindow(Ht,SW_SHOWDEFAULT);
  application.BringToFront;    //到所有页面的顶部
  showmessage( '休息一下' );

end;

#43


我还做了一个这样的程序,偶尔用用,嘿嘿~~

#44


可是我还没做出来呢,丢人,吼吼,

#45


谁知道在哪里还能买到《DELPHI 5开发人员指南》这本书吗?