2012-03-08 3 views
1

Xcode 4.2.1을 사용하여 Mac OS X Lion (10.7.3) 용 프로그래밍을 처음 사용했습니다.OSX Lion의 Xcode에서 보이는 창의 목록을 얻는 방법?

표시 가능한 모든 창 목록을 가져온 다음 숨기거나 최소화하려고합니다.

지금까지,이 코드가 :이 작동하지 않습니다 알고

NSArray *appList = [[NSWorkspace sharedWorkspace] runningApplications]; 
    for (id app in appList) { 
     for (id theWindow in app) { //How do I get list of windows from the app?? 
      if ([theWindow isVisible]) { 
       [theWindow orderOut:sender]; 
      } 
     } 
    } 

을하지만, 가지 각 응용 프로그램에 대한 창 목록을 얻을 방법을 난처한 상황에 빠진입니다.

감사

편집 : 나는 ShowDesktop라는 응용 프로그램 (아래 허용 대답 참조) 윈도우 PC의 바탕 화면보기 기능을 모방이다, 내가 원하는 것을하는 발견했다.

수정 : 2015 년 3 월 : 더 나은 해결책을 찾았습니다. 더 나은 터치 도구 (무료)는 Windows와 같이 작동하는 "모든 Windows 숨기기"바로 가기가 있으며 실제로 열려있는 모든 창을 최소화하고 숨 깁니다 (OSX 기본값과 다릅니다). 그냥 화면에서 그들을 이동). 키보드 콤보 또는 마우스 이동에 할당 할 수 있습니다 ... "OPTION_KEY + Move_Mouse_Into_Lower_Left_Corner"에 할당했습니다.

+0

OS X는 바탕 화면보기 기능이 내장 것을 당신은 알고 살펴하지 않습니다 있나요? 나는 그것이 Cmd라고 믿는다.

+0

똑같은 것이 아니라 ... 모든 것을 가장자리로 옮긴다. 나는 성가심을 느낀다. – jsherk

답변

1
+0

지연된 응답을 드려 죄송합니다 (stackoverflow는 이메일을 보내지 않습니다). 내가 알 수있는 한, 그것은 스크린 샷을받는 사람의 일종입니까? 또는 그것이 무엇을하고 있는지 이해하지 못하고 있습니까? 감사합니다 – jsherk

+0

그것은 모든 창을 반복하는 방법을 보여줍니다 – steve

5
CFArrayRef listOfWindows = CGWindowListCopyWindowInfo(kCGWindowListExcludeDesktopElements | kCGWindowListOptionOnScreenOnly,kCGNullWindowID); 
관련 문제