Slider with Two Handles

Привет, тот кто ищет.
Я провел анализ кода архива выше и был удивлен тому, что он был спроектирован… странно. Для адекватной работы нужно убрать плохо работающие диспетчеры (они ответственны в самих ползунках за срабатывание) и заменить их к чертям на что-то более адекватное, по типу бинда на нажатие, что отправляет по ссылке к UI на выполнение ивента установки активного ползунка.

Проблема слетающего фокуса внимания тупо в размерах, тики слишком редко срабатывают в случае обработки мыши. Или больше хитокс делаем (как я и сделал) либо накручиваем страшную махину для более точного позиционирования.

Плюс зачем было использовать OnInitialized? Заменил на OnConstruct и все работает как положено.

Для тех, кому лень читать буквы:

Добавил картинку без ничего для большего охвата пространства (не все игроки снайперы)

Поскольку мы отказались от диспетчеров, нам нужно заменить их на бинды нажатия и отпускания.

А вот и сам код обработки. Мы просто отправляем по ссылке в наш слайдер запрос на активацию ивента с ссылкой на себя.
ButtonUp версия делает то же самое, но с пустой ссылкой.

А вот и код самого ивента. Проще уже некуда.

И вуаля - вы имеете готовый, рабочий и главное - удобный слайдер с поддержкой многочисленных ползунков.

2 Likes