А.С. писал(а):В настройках экрана винды нужно сделать единый рабочий стол (например, для 2 мониторов 1680х1050 его разрешение будет 3360х1050). В проекте Вы делаете экраны размером 1680х1050 и выводите их либо в позицию рабочего стола 0.0, либо в 1680.0, соответственно, экран отобразится либо на одном, либо на другом мониторе.
в продолжении темы - окно на 2,3,4 монитор вывести можно но только если в свойствах окна указать его координаты.
Тогда функция Show "NameWindow" его включает в указанном месте.
Если в системе только один монитор (не всегда разработчику надолго собирают полнофункциональный стенд) то вывод происходит на первый монитор, где-то в лог должна при этом упасть ошибка - не смотрел.
Если мониторы в наличие есть - то выводит на них.
У меня изначально задача стояла - вывод произвольного окна, на произвольном эране. При этом система сама отслеживает запрет вывода дубля окна - предыдущая копия закрывается.
Для этого использовалась функция ShowAt("NameWindow", x, y)
Boт она не выводила за пределы первого окна.
Ну и наконец решение получилось -
оно сидит в настройках видео карты.
Когда есть 2 выхода, то нужно в СвойствахЭкрана/дополнительно/управление рабочими столами запускать менеджер и настраивать вид отображения.
Их 3 - DualView(по умолчанию), Расширение и Клон.
Нужно выбрать Расширение.
На настройки экрана после этого без мата смотреть нельзя - показывает что первый экран двойной ширины на одном мониторе, но изображение показывает на 2х. Второй экран как бы выключен и одинарнрго размера.
Ну ладно пусть это ляжет в одну из 65000 ошибок Windows, главное что работает.
Ну и на руку в этой неразберихе было отсутствие контроля вывода в Intiouch - в функции Show его просто нет - она готова вывести кого и куда угодно.