Проблема координат рабочего стола Mac OS

444
Stephen Furlani

Мне трудно работать с координатами экрана Mac OS.

Я могу использовать cmd-shift-4, чтобы получить их, но у каждого из моих мониторов нет уникальной системы координат ??!?


[Править: Разъяснение]

У меня рабочий стол из 4 экранов, расположенных по схеме 2х2. Каждый экран имеет размер (2048 пикселей x 1152 пикселей).

cmd-shift-4 задает верхний левый угол каждого экрана как (0,0), а нижний правый - как (2048,1152).

Но каждый экран делает это!

Технически, система координат «должна» работать от (0,0) до (4096,2304). Как мне дифференцировать координаты отдельных мониторов?

Кроме того, когда я создаю окно в (500 500), оно создает его в верхнем левом мониторе в (500 652)

Так что я просто не понимаю, что происходит. Как я могу получить точную карту координат для рабочего стола Mac OS с несколькими мониторами?

Спасибо,

0
Применяя свои математические навыки в начальной школе? - Если серьезно, если ваши экраны имеют экзотические относительные положения, вы можете попытаться сделать снимок во весь экран и получить координаты полученного изображения. Daniel Beck 13 лет назад 1
Я не понимаю ваш вопрос. Вы говорите, что «каждый монитор идет от 0,0», но подразумеваемое «но не до…» отсутствует. Что такое "totalDesktopWidth"? Это переменная - это программа, которую вы пишете? В качестве отступления: конечно, ваш экран не будет иметь общую ширину 0 ... msanford 13 лет назад 0
@msanford, я уточнил свой вопрос. Сожалею. Stephen Furlani 13 лет назад 0
@ Даниил, я уточнил свой вопрос. Stephen Furlani 13 лет назад 0
Настольные системы координат различаются между операционными системами и средами исполнения (например, Java). Окружение, в котором вы создаете окно, начинается слева внизу. Попробуйте создать окно в (0, 1100), оно будет около верхнего левого края. Координаты `Cmd-Shift-4` (скриншот) полностью разделены и предназначены для пользовательских утилит. ** Это не инструмент разработчика *. Они, вероятно, не хотят, чтобы пользователи задавались вопросом, почему экран запускается в тысячах. Могут быть и другие инструменты (может быть, у xScope или чего-то подобного есть поддержка нескольких мониторов?); или посчитай сам. «2048 + 500» - не такая уж большая проблема ;-) Daniel Beck 13 лет назад 0
@ Дэниел, нет, это не так уж сложно. Но я получаю координаты от (0,0) до (1,1) (с плавающей точкой) от вспомогательного устройства, которое я использую для управления своей мышью. Мне нужно перевести эти координаты для * любого * размера монитора, который может иметь потенциальный пользователь. Как получить доступ к значениям координат для всего рабочего стола Mac OS, чтобы я мог конвертировать? Stephen Furlani 13 лет назад 0
Обратите внимание, что имеет смысл иметь утилиты для скриншотов, отражающие популярную систему координат пиксельного редактора, которая начинается слева вверху. Daniel Beck 13 лет назад 0
Вы можете попробовать создать прямоугольник выбора области скриншота от левого верхнего левого края экрана до противоположного края правого нижнего экрана. Это должно дать вам общую ширину и высоту. Если вы хотите получить доступ к этим свойствам программным способом, я предлагаю вам опубликовать этот вопрос в переполнении стека. Daniel Beck 13 лет назад 1
@ Дэниел, ах, спасибо. Справедливо. Stephen Furlani 13 лет назад 0

0 ответов на вопрос