Можно использовать выводы regex
import re
[[int(num) for num in re.findall(r'[0-9]+', string)]
for string in text]
[[10, 6], [10, 4000], [2500]]
getLocation () возвращает местоположение относительно координатного пространства родительских компонентов. Вот почему item1.getLocation () всегда возвращает то же значение, поскольку он всегда находится в том же месте относительно всплывающего меню.
После чтения Javadoc это звучит так, как будто вызов mainFrame.getMousePosition () может вернуть точку, которую вы ищете для.
Старый поток, но У меня недавно была эта проблема. Проблема здесь в том, что во время вызова ActionPerformed для видимости PopupMenu уже установлено значение false, что означает, что его местоположение больше не определено (т. Е. (0,0)). Я разрабатываю интерфейс без мыши, поэтому захват положения мыши был для меня невозможен. В итоге я сохранял позицию меню каждый раз, когда его делали видимым, и использовал это для создания своего компонента.