У меня есть собственный компонент Swing, который реализован аналогично JTree. Он имеет ComponentUI, который отображает список объектов с помощью CellRenderer. Подсказка теперь правильно отображается для каждой визуализированной ячейки, однако она не отслеживает мышь, как мне бы хотелось. Например, если у меня есть коробки, выложенные так:
[ box A ] [ box B ] [ box C ] [ box D ]
Если я перетащу мышь через эти поля, я увижу подсказку для поля A , где мышь пересекает границу поля A . Поскольку я продолжаю двигать мышь, подсказка не будет отслеживать указатель. Когда я покину поле, всплывающая подсказка исчезнет. Когда я пересекаю поле B , происходит то же самое.
Я предполагаю, что всплывающая подсказка обновляет представление только при изменении содержимого getToolTipText(MouseEvent event)
. Мне хотелось бы, чтобы подсказка отслеживала положение указателя независимо от содержимого, возвращаемого getToolTipText
. Быстрый способ - добавить и удалить пустое пространство на основе четного / нечетного числа вызовов метода. Это работает, но, блин, не может быть так, как я должен это делать.
Я ищу изящный нехакерский способ решения этой проблемы. Я надеюсь, что кто-то знает о каком-то тайном флаге, который заставляет подсказку следовать за мышью независимо от содержимого мыши.