当前位置: 首页 > 面试题库 >

如何在Windows,Linux和MacOS中通过Python确定显示空闲时间?

陆子默
2023-03-14
问题内容

我想知道自用户上次敲键或移动鼠标以来已经有多长时间了-
不仅在我的应用程序中,而且在整个“计算机”(即显示器)上,以便猜测他们是否仍在计算机,并且能够观察屏幕上弹出的通知。

我只想从(Py)GTK
+进行此操作,但是我可以调用特定于平台的函数。理想情况下,我想调用已经从Python包装的函数,但是如果不可能,ctypes只要我知道我真正要寻找的是什么,我就不需要C或代码。

在Windows上,我认为我想要的功能是GetLastInputInfo,但是pywin32似乎并没有包装它;我希望我想念一些东西。


问题答案:

Gajim在Windows,OS X和GNU / Linux(和其他* nixes)上以这种方式进行操作:

  1. Python包装器模块(还包括Windows空闲时间检测代码,GetTickCount与一起使用ctypes);
  2. 基于Ctypes的模块以获取X11空闲时间(使用XScreenSaverQueryInfo,在旧的Gajim版本中为C模块);
  3. C模块获取OS X空闲时间(使用HIDIdleTime系统属性)。

这些链接是到过时的0.12版本,因此您可能需要检查当前来源以获取可能的进一步改进和更改。



 类似资料:
  • 问题内容: 我有一个全屏Java应用程序,它将在Windows 7计算机上的8显示器数字标牌类型显示器上运行。我需要能够在特定的物理监视器上显示内容。理想情况下,我希望显示器在“显示器属性”->“设置”中按1-8顺序排列,但是许多拔出/插入和重新排序的尝试均无法通过“显示器属性”->“设置”使物理监视器以任何确定的顺序出现。我可以对其重新排序,但是当我的java程序在显示器上检索信息时,它不在Wi

  • 所有三个操作系统都提供了应用程序向用户发送通知的手段。 Electron允许开发者使用 HTML5 Notification API 发送通知,并使用当前运行的操作系统的本地通知 API 来显示它。 注意: 由于这是一个 HTML5 API,它只能在渲染器进程中使用。 如果你想在主进程中显示通知,请查看 Notification 模块. let myNotification = new Notif

  • 我需要在Anylogic中模拟一个简单的M/M/1问题。到目前为止,我创建了模型并计算了所有性能度量,如队列和系统中的平均时间以及队列和系统中的平均数量。现在我需要计算总成本。汽车的喷漆时间为6小时,每小时70美元。每辆车的闲置时间成本为每小时100美元。车辆按照泊松过程到达,平均速度为每5小时1辆。有人能帮我用annylogic计算这个模型的总成本吗? 在此处输入图像描述

  • 问题内容: 当用户在inputAccessoryView中点击“附加”按钮时,我想通过键盘创建一个简单的视图。像这样: 有简单的方法吗?或者我应该创建我的自定义键盘? 问题答案: 您可以将该新子视图添加到您的应用程序窗口。

  • 问题内容: 我从一个需要标准输入重定向的Python项目开始,使用类似于以下的代码: 问题是,代码运行后,将显示以下内容: 输入内容:您输入的内容:Hello 有没有办法修改我的代码,以便显示以下内容? 输入内容:您好 您输入了:您好 我一直在搜寻高低,但尚未找到答案。如果有人有主意,我将不胜感激。谢谢! 问题答案: 我不确定为什么需要这样做,但是您可以始终这样做: 再说一次,根据需要交换自己的实

  • 问题内容: 我是一名盲人学生,目前正在系统admin/shell编程课程中。尽管ssh可以很好地执行ls,pwd等命令,但编辑器不能与我的屏幕阅读器和ssh会话配合使用。我想知道是否可以在ssh上挂载Linux文件夹,使其显示为Windows驱动器?这样,我可以使用可访问的软件编辑所需的任何文件,而不必经常使用SCP来回发送文件。 问题答案: 早在2002年,Novell就开发了一种名为NetDr