Имя: Пароль:
1C
1С v8
Как можно определить разрешение монитора текущего пользователя?
0 Tilirxs
 
30.05.15
13:29
В Форме списка "Номенклатуры" справа вывожу фиксированный список контрагентов (с фотографиями) и цены по которым мы у них закупали. Для разрешение 800 х 600 помещается 7 поставщиков а для разрешение 800 х 600 1280 х 720 остается место еще для 4-х поставщиков.
Может кто знает как можно вычислить разрешение текущего пользователя что бы в форму списка я выводил то количество который пользователь видит на экране.
1 RomanYS
 
30.05.15
13:50
может проще и правильнее ориентироваться на размер окна формы
2 beaver1971
 
30.05.15
15:14
(0) Под WinXP на 1С 7.7 вот это работало )))

УзнатьПараметрыЭкрана = СоздатьОбъект("MSScriptControl.ScriptControl");
УзнатьПараметрыЭкрана.Language = "VBScript";
ТекстСкрипта = "
|Function GetWindowAttribute()
|    On Error Resume Next
|    Set mService = GetObject(""winmgmts:{impersonationLevel=impersonate}!\\.\root\CIMV2"")
|    If Err.Number <> 0 Then
|        GetWindowAttribute = Err.Number " + Симв(38) + " Err.Description
|        WScript.Quit
|    End If
|    For Each mParam In mService.ExecQuery(""SELECT * FROM Win32_DesktopMonitor"")
|        nHeight = mParam.ScreenHeight
|        nWidth = mParam.ScreenWidth
|    Next
|    GetWindowAttribute = nWidth " + Симв(38) + " chr(120) " + Симв(38) + " nHeight
|End Function
|";
УзнатьПараметрыЭкрана.AddCode(ТекстСкрипта);
ПараметрыЭкрана = УзнатьПараметрыЭкрана.Run("GetWindowAttribute");
Сообщить(ПараметрыЭкрана);


конечно, ректальная тонзиллэктомия, но.... работает )))))
3 Tilirxs
 
30.05.15
19:11
Спасибо.
4 ДенисЧ
 
30.05.15
19:31
картинка_располневший_питт.пнг
5 Chameleon1980
 
30.05.15
21:07
где-тоть есть такая книжечка - "Системное программирование в 1С" вроде так
6 Chameleon1980
 
30.05.15
21:09
7 Chameleon1980
 
30.05.15
21:15
objIE=СоздатьОбъект("InternetExplorer.Application");
objIE.Visible=0;//Отключаемвидимость
objIE.Navigate("about:blank") ;//Загружае мпустуюстраницу
Пока objIE.readyState<4Цикл//Жде мпокаоназагрузится
КонецЦикла;
oScreen=objIE.document.parentWindow.screen;
Сообщить("Текущееразрешениеэкрана:"+oScreen.width+"х "+
oScreen.height);

там вот так пишут
может пригодится
8 Chameleon1980
 
30.05.15
21:15
хотя это более через Ж походу
9 arccos6pi
 
31.05.15
00:50
начиная с 8.3.3 есть функция ПолучитьИнформациюЭкрановКлиента()
http://f5.s.qip.ru/12aR7iKhe.png
10 Casey1984
 
31.05.15
01:45
Управляемые формы?
11 arccos6pi
 
31.05.15
02:08
(10) а разница?