Java 从JTextArea获取文本的单个MouseListener事件
我正在创建一个足球抽签应用程序。我目前有9个文本区域,包含6个不同的团队。我在每个文本区域都附加了一个Java 从JTextArea获取文本的单个MouseListener事件,java,swing,jtextarea,mouselistener,mouse-listeners,Java,Swing,Jtextarea,Mouselistener,Mouse Listeners,我正在创建一个足球抽签应用程序。我目前有9个文本区域,包含6个不同的团队。我在每个文本区域都附加了一个MouseListener。当你点击文本区域时,你会看到一个新窗口,每个团队被分成一组 我在尝试从文本区域获取文本时遇到问题。我可以通过在每个单独的文本区域添加一个MouseListener来实现这一点,但就我所知,这违反了请勿重复自己(DRY)的原则 我已将我的代码包括在下面: gui.getTable1().addMouseListener(new tableListener()); gui
MouseListener
。当你点击文本区域时,你会看到一个新窗口,每个团队被分成一组
我在尝试从文本区域获取文本时遇到问题。我可以通过在每个单独的文本区域添加一个MouseListener
来实现这一点,但就我所知,这违反了请勿重复自己(DRY)的原则
我已将我的代码包括在下面:
gui.getTable1().addMouseListener(new tableListener());
gui.getTable2().addMouseListener(new tableListener());
gui.getTable3().addMouseListener(new tableListener());
gui.getTable4().addMouseListener(new tableListener());
gui.getTable5().addMouseListener(new tableListener());
gui.getTable6().addMouseListener(new tableListener());
gui.getTable7().addMouseListener(new tableListener());
gui.getTable8().addMouseListener(new tableListener());
gui.getTable9().addMouseListener(new tableListener());
public static class TableListener implements MouseListener {
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
//get text from text area and pass to new GUI
}
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}
}
我想对我的所有文本区域使用
TableListener
私有类,而不是9个不同的mouseListener
。我认为这可以在一条线上完成,但我不知道怎么做。有人能帮忙吗?只需将一个监听程序安装到所有文本区域,并使用e.getSource()获取事件源文本区域。1+表示干燥原则。请注意,我已更正了您的类名称以满足Java代码约定:类名称以大写字母开头。