JTables и Jython Events

1

Я только начинал получать над горбом свинг в Jython против качания в Java непосредственно.. и мне интересно, может ли кто-нибудь помочь мне с добавлением action-listeners в JTable в Jython.

Я знаю с помощью кнопки, вы можете просто сделать:

button = Jbutton( " Press me! ", actionPerformed = my.function )

и я знаю, что есть разные события, связанные с JTable.. например, когда что-то выбирается, когда фокус изменяется в таблице, когда сама таблица становится фокусом...

Моя проблема заключается в том, что я не знаю, как реализовать их в синтаксисе создания таблицы. Я создаю таблицу со следующим:

data = DefaultTableModel( items, columnNames )
mytable = JTable( data )

мое основное предположение было бы в том, что мне нужно что-то вроде...

mytable = JTable ( data, isFocused = my.other.function )

но я не знаю точного синтаксиса, и javadocs для JTable достаточно сложны (с аналогичными миллионами других интерфейсов/классов, которые он реализует), не говоря уже о том, чтобы попытаться расшифровать их в контексте jython.

Бонусные очки:

Помимо этого конкретного примера.. есть ли действительно большие ресурсы для синтаксиса Swing in Jython? Я нашел кое-что, но подавляющее большинство, по-видимому, было только малонаселенным, а затем оставлено. (с точки зрения документации)

Теги:
event-handling
jython
jtable
actionlistener

1 ответ

2
Лучший ответ

Список всех возможных действий можно найти на этой странице руководства Java Swing. На этой странице перечислены все методы слушателя в третьем столбце. Не все из них будут применяться к каждому объекту Swing, но если это применимо, вы можете присоединить слушателя так же, как примеры JButton.

Вы определенно, казалось, искали способ заметить, что фокус был получен за столом. Это событие focusGained и описано в документации FocusListener которая находится прямо у первой страницы, о которой я упоминал.

Вот ваш пример, модифицированный для работы:

data = DefaultTableModel(items, columnNames)
mytable = JTable(data, focusGained=my.other.function)

Боюсь, я не нашел хороших описаний работы Jython Swing. Лучше всего, наверное, адаптировать примеры из учебника Swing. Я всегда находил документацию Sun превосходной. (Я знаю, это Oracle теперь...)

Дайте мне знать, если что-то неясно.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню