У меня есть StackPane, к которому я добавляю дочерние панели. Каждый ребенок имеет обработчики MouseEvent, чтобы перетащить его вокруг StackPane. Работает отлично. Затем я также хочу изменить размер панели. Поэтому я добавил 8 маленьких «перетаскиваемых» стекол для ребенка в соответствующих местах, каждый со своими обработчиками щелчка/перетаскивания.Редактирование размера узла JavaFX8
Проблема: однажды возникает событие «перетаскивания» панели, мне нужно установить опорную точку для родительской панели. Эта опорная точка будет зависеть от того, на какую щелку нажата перетащить. Как определить, какая панель была нажата в обработчике? Я подозреваю, что мне не хватает чего-то очень очевидного, но я не вижу его (Google не дает ответов).
Я пробовал использовать hashcode, но не повезло.
Возможно, вам потребуется опубликовать код, чтобы показать, что вы делаете. Если вы регистрируете обработчики мыши с помощью панелей перетаскивания, у вас уже есть ссылка на соответствующую область перетаскивания. –
Исходя из C фона (это без ++), я назначил тот же обработчик для всех панелей в ожидании использования switch() для обработки разных панелей, но, возможно, восемь разных обработчиков - лучший способ пойти. Спасибо за подсказку. – Frank
Я (почти) всегда предпочитаю использовать другой обработчик для каждого узла, а не доступ к источнику события. –