如果我的MacBook连接了外接显示器,我该如何检索MacBook屏幕?
任何一个屏幕都可以是带有菜单栏和底座的屏幕。它们也可以具有相同的分辨率,相同的名称等。
在没有要求用户拔掉除MacBook屏幕以外的所有屏幕的情况下确定它是否可行?
答案 0 :(得分:8)
您可以使用CGDisplayIsBuiltin()
查看显示内容是否已内置。
示例代码:
int i = 0;
for(NSScreen* screen in [NSScreen screens]) {
NSDictionary* screenDictionary = [screen deviceDescription];
NSNumber* screenID = [screenDictionary objectForKey:@"NSScreenNumber"];
CGDirectDisplayID aID = [screenID unsignedIntValue];
NSLog(@"Screen number %i is%@ builtin", i, CGDisplayIsBuiltin(aID)? @"": @" not");
i++;
}