Пакет SwingUtilities
имеет замечательную функцию convertMouseEvent
для преобразования события мыши в компоненте в событие мыши в другом компоненте:
MouseEvent convertedEvent = SwingUtilities.convertMouseEvent(originalComponent, event, otherComponent);
Между тем, MouseEvent
в JavaFX есть метод copyFor
для создания копии MouseEvent
для другого компонента:
MouseEvent convertedEvent = e.copyFor(e.getSource(), otherComponent);
Я хотел бы сделать нечто подобное, чтобы преобразовать JavaFx MouseEvent e
в событие мыши Swing.
Я не смог найти запеченную функцию, поэтому я попытался написать свою собственную. Однако есть два поля, которые я не могу легко конвертировать:
- Поле идентификатора, которое идентифицирует событие. Я предполагаю, что мне придется вручную конвертировать из
e.getEventType().getEventType().getName()
- В JavaFX нет свойства «когда», указывающего, когда произошло событие. Кажется, я мог бы использовать текущее системное время здесь
- Модификатор события мыши. Я не уверен, как построить их из свойств события JavaFX
Есть ли способ получить модификатор из свойств e
?