내 응용 프로그램 (프로세스)에 속한 모든 창을 의미합니다. 나는 그들 모두를 위해 (NSWindow *)와 같은 것을 얻을 필요가있다. 일부 Windows는 타사 플러그인에 의해 생성되었으며 [NSApp windows]에서 액세스 할 수 없습니다. 예, Quartz Window Services는 모든 윈도우를 PID로 반환 할 수 있습니다. 하지만 NSWindow를 CGWindowID로 어떻게 얻을 수 있습니까? 감사!Mac에서 내 응용 프로그램의 Windows 계층 구조에 액세스하는 방법은 무엇입니까?
답변
보통 NSWindowList()
은 윈도우 ID를 제공합니다. 도움이 될 Quartz Window Services도 있습니다.
- 는
[NSApp windowWithWindowNumber: (NSInteger)windowID]
방법이있다NSWindow*
(코코아)를 얻으려면. WindowRef
(Carbon)을 얻으려면HIWindowFromCGWindowID()
기능이 있습니다.
위의 두 가지가 작동하지 않으면 해당 창은 CoreGraphics Private API로 작성되었음을 의미합니다. 리버스 엔지니어링 덕분에 그 정의는 is available입니다.
Mac의 X11 창과 관련하여 폐쇄 된 소스 인 Xplugin 라이브러리와 CoreGraphics Private API를 사용하여 만들어졌습니다.
창 번호를 얻으려면 NSWindowList
을 시도하고 NSWindows를 얻으려면 -[NSApplication windowWithWindowNumber:]
을 시도하십시오.
NSWindowList는 모든 응용 프로그램에서 올바른 수의 창을 반환하지만 windowWithWindowNumber (Cocoa) 및 HIWindowFromCGWindowID (Carbon)는 nil을 반환합니다. – shoumikhin
이것은 올바른 대답입니다 - NSWindowList는 모든 프로세스의 모든 윈도우를 반환하므로 windowWithWindowNumber가 nil을 반환하면 윈도우가 응용 프로그램에 속하지 않는다는 의미입니다. NSWindowListForContext는 특정 프로세스의 창만 반환하지만 실행중인 응용 프로그램의 컨텍스트 ID를 전달하려면 개인 메서드 ([NSApp contextID])를 호출해야합니다. –
- 1. 다른 프로그램의 메모리에있는 구조에 액세스하는 방법은 무엇입니까?
- 2. 계층 응용 프로그램과 계층 응용 프로그램의 차이점은 무엇입니까?
- 3. ASP.NET MVC 응용 프로그램의 구조에 대한 제안
- 4. Mac에서 C++ 응용 프로그램의 메모리 사용량을 확인하는 방법은 무엇입니까?
- 5. Windows Mobile 디바이스의 가속도계에 액세스하는 방법은 무엇입니까?
- 6. Windows 서버에서 .htaccess 파일에 액세스하는 방법은 무엇입니까?
- 7. 누군가 내 응용 프로그램의 사용자가되는 방법은 무엇입니까?
- 8. 내 응용 프로그램의 속도를 높이는 방법은 무엇입니까?
- 9. 내 Mac에서 내 Mac 또는 PC에 액세스하는 방법
- 10. iPhone 응용 프로그램의 구조에 대한 간략한 개요
- 11. Windows 응용 프로그램의 오버레이
- 12. 클래스 계층 구조에 연산자 ==을 (를) 오버로드하는 올바른 방법은 무엇입니까?
- 13. 뷰 컨트롤러를 뷰 계층 구조에 추가하는 적절한 방법은 무엇입니까?
- 14. 계층 구조에 대한 평면 목록
- 15. 계층 구조에 선택적 요소가있는 XPath
- 16. 중첩 된 데이터 구조에 액세스하는 가장 좋은 방법은 무엇입니까?
- 17. Mac에서 Java 응용 프로그램의 다른 인스턴스 실행
- 18. 응용 프로그램의 환경 설정을 저장하는 방법은 무엇입니까?
- 19. n 계층 응용 프로그램의 WCF 서비스 계층 : 성능 고려 사항
- 20. Stylecop - 클래스 x가 상속 계층 구조에 있습니까?
- 21. 특정 도메인 사용자에서 작업 스케줄러로 실행되는 Windows 응용 프로그램의 GUI에 액세스하는 방법은 무엇입니까?
- 22. 내 응용 프로그램의 KeyChain에 프로그래밍 방식으로 액세스하는 방법?
- 23. Mac에서 데이터베이스 응용 프로그램을 개발하는 방법은 무엇입니까?
- 24. 내 Windows 양식 응용 프로그램의 설치 마법사 - 또는 아닙니다?
- 25. Windows Phone 7 응용 프로그램의 RootFrame은 무엇입니까?
- 26. C# Windows 응용 프로그램의 Mediaplayer
- 27. Windows 폼을 응용 프로그램의 기본 폼으로 설정하는 방법은 무엇입니까? C#
- 28. Windows API를 사용하여 응용 프로그램의 MenuBar를 제거하는 방법은 무엇입니까?
- 29. WPF 응용 프로그램의 어셈블리를 병합하는 방법은 무엇입니까?
- 30. 표준 예외 계층 구조의 구조에 대한 이유
"응용 프로그램"의 의미를 분명히 할 수 있습니까? 작성중인 응용 프로그램입니까, 아니면 Mac에서 실행하는 모든 응용 프로그램입니까? – Yuji
질문 자체를 분명히했습니다. – shoumikhin
"타사 플러그인에서 생성 한 일부 창은 [NSApp 창]에서 액세스 할 수 없습니다"라는 것은 무엇을 의미합니까? 예를들 수 있습니까? –