测试屏幕保护程序是运行还是用户锁定 [英] Test if screensaver is running or user locked

查看:291
本文介绍了测试屏幕保护程序是运行还是用户锁定的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在mac os x,我知道在可可我可以设置一个观察员来检测未来的屏幕保护事件或worksapce用户锁定事件像这样:

On mac os x, I know in cocoa i can set up a observer for detecting future screen saver event or worksapce user lock event like this:

27 
28 - (id)init {
29   if ((self = [super init])) {
30     NSDistributedNotificationCenter* distCenter =
31           [NSDistributedNotificationCenter defaultCenter];
32     [distCenter addObserver:self
33                    selector:@selector(onScreenSaverStarted:)
34                        name:@"com.apple.screensaver.didstart"
35                      object:nil];
36     [distCenter addObserver:self
37                    selector:@selector(onScreenSaverStopped:)
38                        name:@"com.apple.screensaver.didstop"
39                      object:nil];
40     [distCenter addObserver:self
41                    selector:@selector(onScreenLocked:)
42                        name:@"com.apple.screenIsLocked"
43                      object:nil];
44     [distCenter addObserver:self
45                    selector:@selector(onScreenUnlocked:)
46                        name:@"com.apple.screenIsUnlocked"
47                      object:nil];
48   }
49   return self;
50 }
51 

但是在我添加这个观察者之前,

But say before i added this observer, is there any way to test if screensaver is running or user locked?

感谢

推荐答案

我发现部分解决方案: OSX:检查屏幕是否已锁定

I found a partial solution: OSX: check if the screen is locked

这个方法的问题是它认为它的锁定的屏幕保护程序的时刻,即使你有要求密码延迟设置为大于立即。任何人都知道一种方法来区分只是屏幕保护程序打开和屏幕保护和锁定(如现在鼠标移动将显示密码屏幕)?

Issue with this method though is it thinks its locked the moment the screensaver comes on, even if you have "require password delay" set to something greater than immediately. Anyone know of a way to differentiate between "just screensaver being on" and "screensaver on and locked (as in now mouse move will show password screen)" ?

这篇关于测试屏幕保护程序是运行还是用户锁定的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆