|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
19.11.2014, 15:05 | #1 |
Форумчанин
Регистрация: 24.12.2012
Сообщений: 776
|
API-функция MonitorFromPoint
Здравствуйте.
Скажите, пожалуйста, что означает в функции MonitorFromPoint параметр pt (этот параметр представляет собой структуру POINT)? Структура POINT содержит две координаты: x и y. Т.е. функция MonitorFromPoint позволяет получить доступ к экрану, в котором находятся эти x и y. А где физически находятся эти x и y? В справке написано: POINT structure that specifies the coordinates of the point of interest in virtual screen coordinates. Т.е. эти координаты находятся на виртуальном экране. А экран монитора - это какой экран? Т.е. получается, что есть три экрана у монитора:
Последний раз редактировалось Скрипт; 19.11.2014 в 15:11. |
19.11.2014, 17:23 | #2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
По координате пикселя определяет на каком мониторе взят пиксель.
|
19.11.2014, 17:25 | #3 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Насколько я понимаю тут речь идет о случае, когда несколько мониторов подключены к ПК, и изображение делится между ними. Т.е. допустим на каждом мониторе разрешение по ширине 2400, значит точка с Х=2860 вернет хендл второго физического монитора.
I'm learning to live...
|
19.11.2014, 17:34 | #4 |
Форумчанин
Регистрация: 24.12.2012
Сообщений: 776
|
Получается в Windows заранее уже настроен общий экран для работы с несколькими мониторами. Этот экран и есть "виртуальный экран". И ещё каждый монитор имеет свой экран.
Последний раз редактировалось Скрипт; 19.11.2014 в 17:38. |
19.11.2014, 17:38 | #5 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
координатное пространство одно, общее.
именно это позволяет приложения спокойно рисоваться где угодно. но если вам надо вы можете знать куда именно принадлежит какая точка. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
19.11.2014, 18:51 | #6 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
19.11.2014, 20:58 | #7 |
Форумчанин
Регистрация: 24.12.2012
Сообщений: 776
|
Все API-функции, работающие с координатами, возвращают данные относительно виртуального экрана?
Например, функция GetCursorPos возвращает координаты относительно экрана монитора или относительно виртуального экрана? |
19.11.2014, 21:39 | #8 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Эта функция должна давать координаты экрана. А на скольких он мониторах умещается ей по-моему все равно.
I'm learning to live...
|
|
19.11.2014, 21:43 | #9 |
Форумчанин
Регистрация: 24.12.2012
Сообщений: 776
|
Но в том то и вопрос, что экранов два вида: экран монитора и виртуальный экран. Вот для какого экрана функция даёт координаты?
Проверил сейчас на двух мониторах. Сделал так, что функция GetCursorPos вернула x=-865 (с минусом). Значит GetCursorPos работает с виртуальным экраном, а не с экраном монитора. Ведь если бы функция GetCursorPos возвращала координаты экрана монитора, то ведь минуса не могло бы быть? Последний раз редактировалось Скрипт; 19.11.2014 в 22:07. |
19.11.2014, 22:32 | #10 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
посмотрите мой пост.
а потом еще раз и так до просветления. все работает с общим координатным пространством. экраны это только мониторы. не путайтесь в английских словах screen display monitor Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 19.11.2014 в 22:38. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
API Функция | Horus92 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 19.07.2010 13:25 |
API функция возвращающая имена дисков всистеме | AIst | Win Api | 2 | 09.08.2008 19:17 |
API-функция | NeiL | Win Api | 2 | 02.05.2008 22:08 |
Градиентная заливка APi функция GradientFillRect в Delphi | Roberto | Win Api | 7 | 11.04.2008 13:34 |