如何检测空闲?如果程序设计为空闲多久就执行某个操作

duguqiubai_qq8 2007-03-02 11:26:47
我想在我的程序中加入一个空闲检测机制.就像QQ的,当无键盘鼠标动作时,自动转换成离线状态.

如果程序设计为空闲多久就执行某个操作 .
请提供详细代码;或附说明;
提供网页也行。
...全文
257 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
hhhui2008 2007-07-16
  • 打赏
  • 举报
回复
收藏
王集鹄 2007-03-06
  • 打赏
  • 举报
回复
....那是毫秒,如果是秒还得除1000
王集鹄 2007-03-06
  • 打赏
  • 举报
回复
using System.Runtime.InteropServices;

[StructLayout(LayoutKind.Sequential)]
struct LASTINPUTINFO
{
[MarshalAs(UnmanagedType.U4)]
public int cbSize;
[MarshalAs(UnmanagedType.U4)]
public uint dwTime;
}

[DllImport("user32.dll")]
static extern bool GetLastInputInfo(ref LASTINPUTINFO plii);

static long GetLastInputTime()
{
LASTINPUTINFO vLastInputInfo = new LASTINPUTINFO();
vLastInputInfo.cbSize = Marshal.SizeOf(vLastInputInfo);
if (!GetLastInputInfo(ref vLastInputInfo)) return 0;
return Environment.TickCount - (long)vLastInputInfo.dwTime;
}

private void Form1_Load(object sender, EventArgs e)
{
timer1.Enabled = true;
}

private void timer1_Tick(object sender, EventArgs e)
{
Text = string.Format("用户已经{0}秒没有路过了", GetLastInputTime());
}
hmilj245216 2007-03-06
  • 打赏
  • 举报
回复
用timer试一试!
duguqiubai_qq8 2007-03-06
  • 打赏
  • 举报
回复
来人啊
灰太狼 2007-03-02
  • 打赏
  • 举报
回复
用个timer计时,当有操作时就清一次timer,没有的话,当定时器到后,就改变软件的状态呀。
duguqiubai_qq8 2007-03-02
  • 打赏
  • 举报
回复
我想做的功能跟屏保差不多;
系统没操作(空闲)多长时间就执行某个程序
icefeiji 2007-03-02
  • 打赏
  • 举报
回复
写个线程定时探测cpu的使用率,低的话就表示空闲~

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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