Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Как получить ЭКРАННЫЕ координаты формы/атрибута (число прочтений - 720 )
ЧебурЗлоп
Senior Member
****
Отсутствует


Ябба!

Сообщений: 314
Местоположение: г.Москва
Зарегистрирован: 14. Августа 2006
Пол: Мужской
Как получить ЭКРАННЫЕ координаты формы/атрибута
15. Января 2019 :: 17:28
Печать  
Formex 2.0.5.133
Как получить координаты формы или атрибута формы в ЭКРАННЫХ координатах.

Формекс дает координаты относительно рабочего холста формы/главного окна.

Попытк получить в экранных координатах - трудности. не учитываются панели главного окна (а они могут быть в нескольо рядов), ни плашка-панель окна формы. панели могут быть видиыми/невидимыми, титул окна формы тоже можно через Окна.СтильОкна(Форма,2) спрятать...

Потому что задача - надо получить с экрана экранную область с вполне опеделенными экранными координатами.
в рамках Формекса как это сделать - не получилось.
  
Наверх
www  
IP записан
 
ЧебурЗлоп
Senior Member
****
Отсутствует


Ябба!

Сообщений: 314
Местоположение: г.Москва
Зарегистрирован: 14. Августа 2006
Пол: Мужской
Re: Как получить ЭКРАННЫЕ координаты формы/атрибута
Ответ #1 - 15. Января 2019 :: 17:32
Печать  
Учтонение:
сначала - вычислить экранные координаты нужного атрибутаформы/формы
в рамках Формекса как это сделать - не получилось.
  
Наверх
www  
IP записан
 
ADirks
1c++ developer
1c++ moderator
Отсутствует


А нужны ли мы нам?

Сообщений: 692
Местоположение: Новосибирск
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Как получить ЭКРАННЫЕ координаты формы/атрибута
Ответ #2 - 16. Января 2019 :: 06:14
Печать  
В RiK_SQL специально для этого делали метод КоординатыОкнаВКоординатыWindows()
(название не очень удачное)

КоординатыОкнаВКоординатыWindows(<?>,,);
Синтаксис:
но>);
Назначение:
Переводит координаты точки, полученные при помощи метода ПолучитьКоординаты объекта АтрибутФормы, в координаты относительно рабочего стола Windows.
Возвращает: возвращаемое значение отсутствует.

Параметры:
<КоординатаХ> - число, Х-координата точки относительно клиентского окна. В эту переменную будет возвращена Х-координата относительно рабочего стола Windows.
<КоординатаY> - число, Y-координата точки относительно клиентского окна. В эту переменную будет возвращена Y-координата относительно рабочего стола Windows.
<ФормаОткрытаМодально> - число, 1 - клиентская форма открыта модально, 0 - не модально.

Пример:

оАтр = СоздатьОбъект(''АтрибутФормы'');
оАтр.УстановитьАтрибут(Форма,''Контрагент'');
оАтр.ПолучитьКоординаты(Лево, Верх, Ширина, Высота);

ОбъектП.КоординатыОкнаВКоординатыWindows(Лево,Верх,Форма.МодальныйРежим());

стрМеню = СписокВСтроку(сзКонтрагенты, РазделительСтрок);
оМеню = CreateObject(''Svcsvc.Service'');
ВыбранныйКонтрагент = оМеню.FilterValue(стрМеню, 1+8+64, стрПрефиксНаименованияКонтрагента,Лево,Верх+Высота, 1,);

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