100急求大家帮忙.实现3分钟,就隐藏主窗体,显示登陆框的功能!
function TFrm_main.LastInput: DWord; //取系统无操作时间
var
LInput: TLastInputInfo;
begin
LInput.cbSize := SizeOf(TLastInputInfo);
GetLastInputInfo(LInput);
Result := GetTickCount - LInput.dwTime;
end;
主窗体timer1控件写:
var
time :word;
beginv
time := self.LastInput;
if time > timer1.Interval then
begin
ShowWindow(Frm_main.Handle,SW_HIDE);
Frm_login.Visible := true;
end;
我这里可以实现了,但是在2000下能用,98下不能用 ,因为GetLastInputInfo这个api不能用,请教大家怎么解决,得结果立即给分,在线等.谢谢!
问题点数:0、回复次数:6Top
1 楼crystal1024(crystal)回复于 2004-12-02 20:57:20 得分 0
自己顶一下..Top
2 楼nyf1220(我是党员----不过听说最近风声紧,打算换名字)回复于 2004-12-02 21:04:10 得分 0
呵呵,这个不用API了,就可以
用2个TIMER,设置三分钟
然后开始判断鼠标位置(用鼠标位置来判断是否操作,应该可以)
TIMER检测鼠标位置跟上一次鼠标位置不一样,则触发你的事件Top
3 楼gwolf(阿呆)回复于 2004-12-02 21:05:34 得分 0
同意nyf1220Top
4 楼crystal1024(crystal)回复于 2004-12-02 21:13:33 得分 0
检测鼠标,还有键盘呢?!.这是钩子,但具体怎写呢?Top
5 楼huazaijiajia(千军万马)回复于 2004-12-02 21:13:45 得分 0
如果键盘也要检测,那就麻烦了。。。Top
6 楼g961681(技术庸人(情商太低))回复于 2004-12-02 21:20:30 得分 0
自己去截keyPress消息和MouseMove消息。Top




