[CDR 2022] Получить значение ReferencePoint

  • Автор темы Автор темы DukereD
  • Дата начала Дата начала
не совсем понял как с этим работать
Я засунул это в
Код:
Private Sub UserForm_Click()
  Application.FrameWork.Automation.Invoke "3148e122-4f73-6e8a-4dfb-b2f6a84090d5"
End Sub
в момент клика по форме он появляется возле курсора.

Теоретически через winApi можно получать состояние этого контрола.
 
Я засунул это в
Код:
Private Sub UserForm_Click()
  Application.FrameWork.Automation.Invoke "3148e122-4f73-6e8a-4dfb-b2f6a84090d5"
End Sub
в момент клика по форме он появляется возле курсора.

Теоретически через winApi можно получать состояние этого контрола.
не. этот способ мне не катит. я докер пишу а он ругается на любое подключение внешних модулей.
думал все будет проще (((
 
не. этот способ мне не катит. я докер пишу а он ругается на любое подключение внешних модулей.
думал все будет проще (((
Каким образом докер ругается на подключение внешних модулей?
Вы же запускаете это в среде ВБА?
Это код из докера, привязанный к кнопке:
Код:
var doc = window.external.Application;
    var presetScript = doc.GMSManager.RunMacro("makro", "Macros.something");
А это уже в ВБА:

Код:
Sub something()
  Application.FrameWork.Automation.Invoke "3148e122-4f73-6e8a-4dfb-b2f6a84090d5"
End Sub
 
Каким образом докер ругается на подключение внешних модулей?
Вы же запускаете это в среде ВБА?
хотелось по максимуму обойтись без VBA еще теплится надежда, что пользователи МАКов смогут поставить макрос.
Код:
Sub something()
  Application.FrameWork.Automation.Invoke "3148e122-4f73-6e8a-4dfb-b2f6a84090d5"
End Sub
 
Последнее редактирование:
Не пойму, так вы это на js пишете что ли или как?
да. докер на JS выкладывал в одной ветке )

копируем сюда:
"c:\Program Files\Corel\CorelDRAW Graphics Suite 2022\Programs64\Addons"

Убедитьтся, что не стоит в настройках "задержка VBA"
 

Вложения

Тогда вы в большой беде, жабоскрипт там рудиментарный :(
 
Тогда вы в большой беде, жабоскрипт там рудиментарный :(
да не. в целом удобней код пишется и все аналогичные стандартные функции работают. пока не заметил рудиментарности никакой. а главное скорость работы в разы быстрей VBA. и с памятью лучше работает. переписал с VBA на JS одну рекурсивную функцию. где VBA уже споткнулся от количества самопересечений JS норм работает.
 
Но можно же отрисовать скажем квадрат, отзеркалить 2 раза и вычислить по изменению координат :)
не прокатит. мне же нужно менять это значение. а не просто получить его. чтобы не рисовать свой похожий элемент интерфейса хочу использовать стандартный. а если рисовать он берет значение ActiveDocument а не переключателя.
 
мне же нужно менять это значение. а не просто получить его
чтобы не рисовать свой похожий элемент интерфейса хочу использовать стандартный
Че-то тут с логикой не так :)
Вам насколько понял нужно получить значение RP которое установлено в интерфейсе панели transform... не?
 
Последнее редактирование:
Че-то тут с логикой не так :)
да все с логикой норм. я хочу чтобы пользователь тыкал в стандартный инструмент а не рисовать повторяющийся функционал.
а меняя "физический" переключатель в макросе ReferencePoint не меняется
 
он не будет привязан к переключателю
С чего бы? :) рисуем квадрат, 2 раза тыкаем мышкой - зеркало по горизонтали, зеркало по вертикали, изменение координат связано с переключателем?
 
С чего бы? :) рисуем квадрат, 2 раза тыкаем мышкой - зеркало по горизонтали, зеркало по вертикали, изменение координат связано с переключателем?
да. когда "руками" рисуем. все норм. а если макросом - то нет
 
  • Спасибо
Реакции: Chiga
Чем отличается макросом от руками если Application.FrameWork.Automation.Invoke "ID Зеркала"? :)
да толку где его нажимать на панели или под мышкой. если он в макрос это значение не передает. не меняет от ActiveDocument.ReferencePoint