Java 在Swing UI中使用MVC/MVP?

Java 在Swing UI中使用MVC/MVP?,java,swing,Java,Swing,到目前为止,我已经在一个类中使用了一些java swing代码。 我想设计和开发更好的UI应用程序。试图将MVP/MVC用于SwingUI,但在任何地方都找不到任何具体的示例 我想开发带有提交按钮的SwingUI表单。i、 e.此代表用户表单的主面板包含三个面板: -带有组合框和文本字段的标题面板。 -中间面板与桌面窗格。 -带有一些组合框和文本字段的结束面板 所以基本上我已经写了4个UI类,没有动作监听器,一个用于main,三个用于header、center和end panel。执行主面板显示

到目前为止,我已经在一个类中使用了一些java swing代码。 我想设计和开发更好的UI应用程序。试图将MVP/MVC用于SwingUI,但在任何地方都找不到任何具体的示例

我想开发带有提交按钮的SwingUI表单。i、 e.此代表用户表单的主面板包含三个面板: -带有组合框和文本字段的标题面板。 -中间面板与桌面窗格。 -带有一些组合框和文本字段的结束面板

所以基本上我已经写了4个UI类,没有动作监听器,一个用于main,三个用于header、center和end panel。执行主面板显示所有组件

我想向组合框提供运行时数据,当用户提交时,我应该从组合框和其他字段中获取所选值。 我应该如何使用MVP/MVC进行设计。有谁能给我解释一下,或者给我一个参考或例子的链接吗?

看看这个:

MVC模式需要这3个类

  • 模型:处理数据
  • theView:handles GUI
  • 控制器:处理侦听器
您可能需要先了解一些观察者模式

设计可如下所示:

public class Test {

    public Test(){
       MyModel      model      = new MyModel();
       MyController controller = new MyController(model);
    }
}
控制器类

public class MyController implements ActionListener {
    private MyView view;
    private MyModel model;

    MyController(MyModel theModel){
        model = theModel;
        view = new MyView(this);
        model.register(view);
    }

    // implement actionPerformed here
}
视图类

public class View implements Observer {
    private MyController controller;

    public View(){
         // Swing Components here
         JButton button = new JButton();
         button.addActionListener(controller);
         add(button);
    }
    // notifyObserver method implementation
}
模范班

public class MyModel extends Observable {
    // handle state/data changes here

}

你看到的例子怎么样?谢谢你的回答。链接有助于理解在swing中使用MVC。