У меня есть Gui-класс, расширяющий JFrame. Вверху находится JMenuBar, а остальная часть состоит из большого JTextField.
Я реализовал mouseListener для этого класса, и проблема в том, что он, кажется, слушает только при нажатии на JMenuBar, а не на JTextArea. Итак, мой вопрос в том, как заставить mouseListener реагировать на щелчок мышью по JTextArea.
вот снимок Gui-класса (конструктор)
public class Gui extends JFrame implements ActionListener, MouseListener {
private JMenu fileMenu;
private JTextArea textArea;
private JFileChooser chooser;
public static void main(String[] args) {
new Gui().setVisible(true);
}
public Gui() {
setSize(600, 600);
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
setLocation(dim.width/2-this.getSize().width/2, dim.height/2-this.getSize().height/2);
createFileMenu();
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
menuBar.add(fileMenu);
textArea = new JTextArea();
JScrollPane scroll = new JScrollPane (textArea,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
Container contentPane = getContentPane();
contentPane.add(scroll);
chooser = new JFileChooser();
addMouseListener(this);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
MouseListener
должен реагировать на что-либо другое, кроме событий мыши, которые происходят сJFrame
(где вы его зарегистрировали)? Может помочь Как написать прослушиватель мыши - person MadProgrammer   schedule 15.04.2015