Переход к методу, который выполняется при нажатии кнопки J во время отладки через Intellij - PullRequest
0 голосов
/ 15 марта 2019

Я использую приложение, которое имеет огромную базу кода и использует Java Swings для создания GUI. Теперь я хочу узнать метод или часть кода, которая запускается, когда я нажимаю на определенный JButton, пока я нахожусь в режиме отладки в Intellij. Есть ли способ обойти эту ситуацию?

1 Ответ

1 голос
/ 15 марта 2019

В IntelliJ щелкните правой кнопкой мыши самый верхний элемент в вашем проекте и выберите Найти в пути , а затем введите текст всплывающей подсказки (или другой уникальный идентификационный текст для этой кнопки).Надеемся, что это должно найти исходный код, где определена кнопка, а затем вы можете найти, где для вашей кнопки вызывается метод addActionListener.Это работает, только если ваш исходный код содержит код кнопки (т. Е. Он не включен в стороннюю библиотеку).

В качестве альтернативы, вы можете попробовать посмотреть иерархию классов ActionListener, чтобы найти слушателя для вашегокнопка (откройте класс в IntelliJ и выберите Navigate > Type Hierarchy , или Ctrl + H - это сочетание клавиш по умолчанию).Это перечислит все реализации в вашем приложении, так что это, вероятно, будет очень большой список:

enter image description here

Наконец, вы должны бытьвозможность установить точку останова на ActionListener.actionPerformed в IntelliJ.Затем отладьте ваше приложение и нажмите кнопку, и оно должно привести вас к слушателю действия.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...