Страница 1 из 1

Координаты мышки относительно VI

Добавлено: 19 июл 2021, 19:28
AndryG
Доброго времени суток! Уважемые форумчане, не получается абсолютно точно вычислить координаты относительно панели, получается небольшое смещение,не понимаю почему так,если я что-то делаю не так,то прошу помощи в решении данного вопроса. Заранее благодарю.

Re: Координаты мышки относительно VI

Добавлено: 19 июл 2021, 19:48
Artem.spb
Используйте события.
coord.png
coord.png (7.01 КБ) 1770 просмотров
Если почему-то нужно "руками", то
Panel Bounds - это окно без рамки (красная метка),
Вам нужно ещё использовать Win bounds - всё окно, включая заголовки/меню (синяя метка),
а положение элеме5нтов задаётся относительно Origin - чёрная полоска (на сетке есть точка в точке (0:0))
bounds.PNG
В итоге, примерно так:
- положение мыши скомпенсировать относительно положения окна
- скомпенсировать это относительно панели
- скомпенсировать на положение Origin
- там разместить объект

Re: Координаты мышки относительно VI

Добавлено: 19 июл 2021, 22:32
AndryG
Спасибо за отклик, способ через event мне конечно известен,но нужно,как вы выразились "руками", я думал у меня где-то ошибка в расчетах,оказывается нет, по поводу компенсации я думал,но нужно сделать ее автоматической ,а не в виде константы, на другом компьютере ,с другим рабочим столом ,могут быть вопросы.

Re: Координаты мышки относительно VI

Добавлено: 19 июл 2021, 23:11
AndryG
AndryG писал(а): 19 июл 2021, 22:32 Спасибо за отклик, способ через event мне конечно известен,но нужно,как вы выразились "руками", я думал у меня где-то ошибка в расчетах,оказывается нет, по поводу компенсации я думал,но нужно сделать ее автоматической ,а не в виде константы, на другом компьютере ,с другим рабочим столом ,могут быть вопросы.
Нашел решение!

Re: Координаты мышки относительно VI

Добавлено: 19 июл 2021, 23:39
Artem.spb
AndryG писал(а): 19 июл 2021, 22:32 по поводу компенсации я думал,но нужно сделать ее автоматической ,а не в виде константы
А я и не говорил про константы :)
Все написанные мной значения берутся именно через PN, как вы и сделали в итоге.

Только пара замечаний
- PN лучше вызывать одним узлом, будет работать немного быстрее.
- я предпочитаю при запуске принудительно Origin в (00) смещать чтобы не заниматься компенсациями при таких операциях, и вообще, элементы интерфейса обычно выстраивают аккуратно, и если окно скролить, всё поедет. Вот чтобы этого не было, и чтобы не заниматься выравниванием вручную перед каждым запуском, я просто принудительно выравниваю программно.

Re: Координаты мышки относительно VI

Добавлено: 20 июл 2021, 12:57
AndryG
Artem.spb писал(а): 19 июл 2021, 23:39
AndryG писал(а): 19 июл 2021, 22:32 по поводу компенсации я думал,но нужно сделать ее автоматической ,а не в виде константы
А я и не говорил про константы :)
Все написанные мной значения берутся именно через PN, как вы и сделали в итоге.

Только пара замечаний
- PN лучше вызывать одним узлом, будет работать немного быстрее.
- я предпочитаю при запуске принудительно Origin в (00) смещать чтобы не заниматься компенсациями при таких операциях, и вообще, элементы интерфейса обычно выстраивают аккуратно, и если окно скролить, всё поедет. Вот чтобы этого не было, и чтобы не заниматься выравниванием вручную перед каждым запуском, я просто принудительно выравниваю программно.
Да,конечно вы правы,это же только принцып, значения ,которые не меняются, вычисляются в инициализации или первом запуске приложения,кто как пишет.