Мне нужно разместить мое окно в окне другого приложения. Как перечислить окна другого приложения для какао? Можно ли их контролировать ? Если нет: как я могу нарисовать окно другого приложения? Спасибо!Как вернуть окно Какао?
ответ
Как перечислить окна другого приложения какао?
Вы можете перечислить окна другого приложения с помощью API Accessibility. Не имеет значения, является ли это приложение какао или нет.
Можно ли их контролировать?
Здесь косвенно, независимо от того, является ли приложение какао (или углерод с использованием стандартных элементов управления). Точнее, важно, доступно ли приложение.
Как правило, можно перемещать другое окно, изменять его размер или делать простые вещи с элементами управления (например, кнопками).
Невозможно скопировать одно из ваших окон в окно в другом приложении. Вы должны будете наблюдать за его местоположением и перемещать свое окно, когда другой движется. После живого перетаскивания этот путь невозможен.
Если нет: как я могу нарисовать окно другого приложения?
Вы не можете. Вы можете рисовать только в своих окнах.
Вы можете сделать прозрачное оверлейное окно и нарисовать его, но это вернет вас к проблеме записи одного из ваших окон в окно в другом приложении.
Возможно, вам следует задать более широкий вопрос о том, чего вы надеетесь достичь, нажимая одно из ваших окон на окно в другом приложении или рисуя в окно в другом приложении.
Какао не поддерживает повторное использование другого окна приложения или его рисования.
Но, там уже два способа получить окна атрибутов для всех приложений, таких как положение, размер, г-го порядка и т.д.
- Accessibility API (также позволяет контролировать окно иностранного приложения: перемещать, изменять размер, нажимать на него кнопки и т. д.). Если иностранная заявка не поддерживает API доступности, то ...
- Quartz Window Services и пример кода для них, называемый «Son of Grab».
Ни одно из этих решений не может на самом деле закрепить одно окно другим; API Accessibility не предоставляет живых обновлений по мере того, как происходит перетаскивание, а Quartz Window Services вообще не предоставляет каких-либо уведомлений об изменении окна или -resize. –
заказ CGWindow.h
CGWindowListCreateDescriptionFromArray(), вероятно, что вы ищете.
Да, это часть Quartz Window Services. – shoumikhin
- 1. Как выглядит это окно Какао?
- 2. Какао: как открыть закрытое окно
- 3. Перевернув окно в какао
- 4. какао окно программы запуска
- 5. какао Всплывающее окно анимации
- 6. Какао: Окно активации: shouldPopUpDocumentPathMenu :?
- 7. Какао-текстурированное окно в Qt
- 8. Как вернуть окно Logcat в окно отладки?
- 9. Окно с автоматическим изменением какао
- 10. Как сделать главное окно видимым в какао?
- 11. Какао: Как показать окно не модально?
- 12. Какао HUD Окно: удалить прозрачность?
- 13. Как вернуть диалоговое окно предупреждения
- 14. какао ARC: Удалить окно из памяти
- 15. Шаблон приложения для какао - MainMenu.xib - Главное окно
- 16. Какао: получить самое активное окно активного приложения
- 17. Re-показать мое главное окно программы Какао
- 18. Есть ли окно ввода в какао?
- 19. Скрыть окно в какао от awakeFromNib
- 20. Создать окно OS X без какао
- 21. Какао посылает фоновое окно в начало
- 22. Запомнить окно открыть/закрыть в Какао
- 23. Пользовательское раскрывающееся окно/диалог в какао
- 24. Изменение Альфа на Главное окно - Какао
- 25. Окно запуска из подкласса NSView в какао
- 26. Окно исчезает после создания на какао
- 27. Окно полноэкранного какао на вторичном дисплее
- 28. Скрыть и показать окно HUD - Какао?
- 29. Добавление контекста OpenGL в окно какао
- 30. Какао OpenGL окно в чистом C?
Спасибо, Питер! Я сделаю следующее предложение: могу ли я выложить окно без полей таким образом, чтобы оно отображалось точно в некотором месте (я имею в виду определенные координаты x и y из левого верхнего угла) другого активного окна, перемещаться и скрываться с ним, чтобы пользователь мог подумать, что он действительно размещен на нем? – shoumikhin
Я ответил, что во второй трети моего ответа. –