|
v7: Узнать разрешение второго монитора для 1с 7.7 | ☑ | ||
---|---|---|---|---|
0
Shrk_V_V_V
07.09.18
✎
14:07
|
Тут
Как можно определить разрешение монитора текущего пользователя? Написано, как узнать для первого, а для второго не работает Попобовал поправить | For Each mParam In mService.ExecQuery(""SELECT Sum(1) as n FROM Win32_DesktopMonitor"") | nHeight = mParam.n | nWidth = mParam.n | rez = rez " + Ñèìâ(38) + " cStr(nWidth) " + Ñèìâ(38) +"""x""" + Ñèìâ(38) + " cStr(nHeight) " + Ñèìâ(38) + """z"" | Next | GetWindowAttribute = rez но все равно, не работает |
|||
1
2S
07.09.18
✎
14:08
|
позвольте узнать - нафейхуа такое нужно?
|
|||
2
Shrk_V_V_V
07.09.18
✎
14:12
|
У некоторых пользователей второй монитор портрет, а не ланшафт, соответственно программа работает слегка по другому
|
|||
3
Garikk
07.09.18
✎
14:30
|
(0) мне негде запусить но
SELECT Sum(1) as n FROM Win32_DesktopMonitor что этим вы хотели сделать? (в отличии от оригинала по вашей ссылке) |
|||
4
Shrk_V_V_V
07.09.18
✎
14:35
|
Запрос правильный, звездочка там, это я опечатался. Пытался посчитать сколько строчек там, но так похоже нельзя. Запрос такой же, просто собирается не по последней, а по всем строчкам. Но выводит все равно данные одного монитора
|
|||
5
Shrk_V_V_V
07.09.18
✎
14:39
|
||||
6
Сияющий в темноте
07.09.18
✎
15:08
|
Можно у системы спросить разрешенин рабочего стола и области,спроецированные на мониторы,тогда получите,если на мониторе рабочий стол,а если нет,то нужно у видеокарты запрашивать,что и куда.
|
|||
7
Пуля
07.09.18
✎
15:11
|
Пусть пользователь ставит галочку - "Вертикаль/горизонталь", и по ней определять...
|
|||
8
Shrk_V_V_V
07.09.18
✎
15:41
|
Галочку придется просить, если не вычислю..
Не очень понимаю, как спросить у видеокарты.. |
|||
9
NSSerg
07.09.18
✎
15:52
|
For Each mParam in mService.ExecQuery("Select * from Win32_DesktopMonitor")
nHeight = mParam.ScreenHeight nWidth = mParam.ScreenWidth Next |
|||
10
NSSerg
07.09.18
✎
15:56
|
(9) Виноват, не увидел скриншота. И неужели не работает?
|
|||
11
Djelf
07.09.18
✎
18:16
|
(0) Кажется я понял в чем причина. Видимо у тебя одинаковые мониторы, а Win32_DesktopMonitor выдает физические параметры монитора. Поэтому у второго монитора они те же самые.
Попробуй логические единицы проверить https://docs.microsoft.com/ru-ru/windows/desktop/CIMWin32Prov/win32-videocontroller А formex религия не позволяет использовать? Он должен логические единицы выдавать. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |