Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Положение формы в окне 1С (число прочтений - 2467 )
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Положение формы в окне 1С
28. Мая 2012 :: 06:28
Печать  
Пытаюсь сделать такое:

Код
Выбрать все
Процедура ПослеОткрытия()
	Окна = СоздатьОбъект("Окна");

	Лево = -1; Верх = -1;
	Окна.ПоложениеОкна(Форма, Лево, Верх);
	Сообщить("" + Лево + "х" + Верх);

	Окна.ПоложениеОкна(Форма, 5, 15);

	Лево = -1; Верх = -1;
	Окна.ПоложениеОкна(Форма, Лево, Верх);
	Сообщить("" + Лево + "х" + Верх);
 




Но результат какой-то невнятный.
Лево устанавливает нормально, а вот откуда считает "верх" я понять не могу.
Ощущение, что отступает на пару см от последней панели.

фигня какая-то
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Положение формы в окне 1С
Ответ #1 - 28. Мая 2012 :: 06:44
Печать  
Дополнительные подробности - добавил вывод сообщения положения окна в ПриЗакрытии
сообщает  "7х135", чтоб весьма похоже на правду.

Погонял с разной "стартовой" позицией, получил такое:
под одним юзером 1С сдвиг стабильный (+2, +120)
под другим - тоже стабильный (+7, +75)
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Положение формы в окне 1С
Ответ #2 - 28. Мая 2012 :: 06:57
Печать  
Еще более дополнительные подробности:

если сделать окно 1С НЕ развернутым на весь экран и постепенно сдвигать его вправо-вниз, то чем дальше окно 1С от левого-верхнего угла экрана - тем больше сносит крышу методу ПоложениеОкна();

Подозреваю косяки в пересчете координат.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать