我试图在我的程序中实现MVC,这是我目前的Controller类:
public class Controller {
private DatabaseModel model;
private View view;
public Controller(View view, DatabaseModel model){
this.model = model;
this.view = view;
this.view.getMainPanel().getCandidateForm().
addSubmitListener(new CandidateListener());
}
class CandidateListener implements ActionListener{
public void actionPerformed(ActionEvent e){
System.out.println("ACTION");
}
}
}
因为我的视图包含几个私有子JPanels - MainFrame和CandidateForm - 后者是按钮所在的位置,在第10行我将candidateForm面板传递回控制器,然后将其称为' s' addSubmitListener()'方法,它将自定义侦听器添加到按钮。
这看起来像添加监听器的正确方法吗?我应该在Controller中以这种方式定义CandidateListener吗?或者可以在子JPanel中创建一个匿名类?
对于MVC和听众的最佳实践的任何其他建议也将不胜感激!