2012-06-16 7 views
1

응용 프로그램에서 실행되지 않아도 좌표를 찾을 필요가 있습니다. 일부 검색 후에 quartz window services을 발견했습니다. 그러나 링크 된 참조 문서에는이 문서의 위치는 언급되어 있지 않으며이 문서에서 찾을 수있는 유일한 문서입니다. 다른 프레임 워크 참조 문서를 살펴 보았지만 그 중 아무 것도 언급하지 않았습니다.석영 창 서비스를 찾을 수 없습니다.

이 문제는 분명히 내 자신의 무지에서 비롯된 것이며, 나는 정말로 묻고 싶지 않습니다. 그러나 나는 인터넷 전체를 수색 해 왔으며 석영 windows 서비스의 위치를 ​​전혀 찾을 수 없었습니다.

어디입니까? 그것이 프레임 워크의 일부입니까, 그렇다면 어떤 클래스입니까? 내가 아는 전부는 그것이 포함하고있는 기능이며, 그들이 정확히 내가 필요한 것처럼 보입니다!

도움을 주셔서 감사합니다. 또한, 내가 미래에 나 자신을 위해 이것을 어떻게 알아낼 수 있는지 안다면, 나는 또한 감사 할 것입니다.

참고 :이 중요한 경우 나도 몰라,하지만 난 C.

에서

답변

2

그래, 분명보다 약간 적은의 IT를 사용하는 것이 아니라 자바에서 호출하는 JNA를 사용할 계획입니다. "Quartz Window Services"를 검색하면 개요와 같은 링크를 찾을 수있었습니다 : https://developer.apple.com/library/mac/#documentation/Carbon/Reference/CGWindow_Reference/Reference/Introduction.html

이는 ApplicationServices 프레임 워크에 있음을 보여줍니다.

+0

정말 고마워요. 나는 왜 그것을 찾을 수 없었는지 모르지만, 그것은 내 질문에 답합니다. –

1

먼저 Java에서 C 메소드에 액세스하는 방법을 100 % 확신 할 수는 없지만 (브리징을 할 수 있다면 접근성을 사용할 수 있습니다. API를 사용하여 실행중인 모든 응용 프로그램에 대한 창을 가져옵니다 (see the answer to this related question). 일단 당신이 그 창 목록을 가지고 있다면, 당신은 그 창들 각각이 화면 상 어디에 존재하는지에 대한 프레임 (좌표)을 얻을 수 있습니다.

내게 필요한 옵션 API를 사용하는 또 다른 방법은 사용자가이를 허용하려면 "OPT IN"해야합니다. 기본적으로 기본적으로 사용하도록 설정되어 있지 않습니다.

Here's another question that closely matches yours 그러나 허용 된 대답은 현재 실행중인 응용 프로그램에 대한 창을 검색하는 솔루션 만 제공합니다.

관련 문제