축구 용 앱을 만들고 있습니다. 현재 6 개의 팀을 보유하고있는 9 개의 텍스트 영역이 있습니다. 각 텍스트 영역에 MouseListener
을 첨부했습니다. 텍스트 영역을 클릭하면 각 팀이 그룹 형식으로 분리 된 새 창을 볼 수 있습니다.단일 MouseListener JTextArea에서 텍스트를 가져 오는 이벤트
텍스트 영역에서 텍스트를 가져 오는 데 문제가 있습니다. 각 개별 텍스트 영역에 MouseListener
을 추가하여이 작업을 수행 할 수 있지만 이는 알고있는 한 자신을 반복하지 마십시오. 원칙을 위반합니다.
내가 포함했다 아래에있는 내 코드 : 내가 대신 9 가지 MouseListeners
의 내 모든 텍스트 영역의 TableListener
개인 클래스를 사용하고자하는
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
}
}
. 나는 이것이 한 줄로 할 수 있다고 생각하지만 나는 어떻게 생각할 수 없다. 누군가 도와 주실 수 있습니까?
DRY 원칙에 대해 1+. Java 코드 규칙을 수행하기 위해 클래스 이름을 수정했습니다. 클래스 이름은 대문자로 시작합니다. – dic19