0

MVC デザイン パターンから小さなプロジェクトをモデル化しようとしています。そのため、JButton(submit) (UI クラス内) の ActionListener をモデル クラスの evaluate メソッドに割り当てようとしています。これをすべて 3 番目のクラス (コントローラー) コードで実行しています。

public class ExpressionController implements ActionListener {

ExpressionModel model;
ExpressionUI view;

public ExpressionController(ExpressionModel m, ExpressionUI v) {
    model = m;
    view = v; 

            //ERROR: The method is undefined for the type Expression Controller
    actionListenerComponenets(this);
}


@Override
public void actionPerformed(ActionEvent e) {
    try {
        double result;
        result = model.evaluate(Double.parseDouble(view.input.getText()));
        view.result.setText(String.valueOf(result));
    }catch (Exception ex) {
        ex.printStackTrace();
    }

}
public void actionListenerComponenents(ActionListener ae) {
    view.submit.addActionListener(ae); 
}

私の問題は、UI クラスの外部でアクション リスナーを割り当てることです (コード内のコメントを参照)...これを行うためのより良い方法はありますか? 単純な例に過ぎないことはわかっていますが、MVC デザインに慣れたいと思っています。

4

0 に答える 0