Обычно NSWindowList()
выдаст идентификаторы окна.Также есть службы кварцевых окон , чтобы помочь.
- Чтобы получить
NSWindow*
(Какао), есть метод [NSApp windowWithWindowNumber: (NSInteger)windowID]
. - Чтобы получить
WindowRef
(Углерод) есть функция HIWindowFromCGWindowID()
.
Если оба вышеперечисленных пункта не работают, это означает, что окно было создано с помощью CoreGraphics Private API.Его определение доступно благодаря реверс-инжинирингу.
Что касается окон X11 на Mac, они созданы с помощью библиотеки Xplugin (от Xquartz), которая является закрытым исходным кодом и также использует CoreGraphics Private API.