gpt4 book ai didi

java - MVC/MVP 在 Swing 应用程序中如何工作?

转载 作者:行者123 更新时间:2023-11-30 04:23:26 24 4
gpt4 key购买 nike

我被要求改造现有的 JDialog,它是内部 Swing 应用程序的子容器。我将从头开始重写该对话框,并被要求负责使 Swing 应用程序类似于真正的 MVC/MVP 架构(因此我的 JDialog 改造将是众多专业人士中的第一个) MVC 对应用程序本身进行了更改)。

我了解 MVC/MVP,因为它与 Web 应用程序相关:

  • Controller - 是 Web 应用程序框架调度来处理 HTTP 请求的 Controller ;通常由多个方法组成,其中每个“ Controller 方法”处理稍微不同的 URL 的请求
  • 模型 - 表示特定于调用的数据的 DAO 或 POJO/bean; Controller 从数据库中获取模型并将其注入(inject)到 View 中
  • View - 最终生成 HTML/JSP 并将其发送回客户端/请求者的机制

这并不是所有 MVC/MVP Web 框架的运行方式,但它是总体思路。

但我正在努力确定如何将其转换为 Swing 应用程序。在 Swing 应用程序中,您可以:

  • JDialog 本身
  • 构成对话框“ View ”的所有 UI 小部件(JButtonsJTextFields 等)
  • 所有 UI 小部件的操作/事件监听器,它们共同构成了用户与 View 交互时对话框如何运行的“业务逻辑”
  • 所有其他“UI 粘合代码”(设置将启用/禁用哪些小部件、设置它们在屏幕上的大小和位置、设置它们的工具提示文本等)
  • 还有很多其他东西

所以我问:如何使用 MVC/MVP 架构模式组织运行 JDialog 所需的所有代码?另外,如果有任何文章、教程或现有的开源项目展示 MVC/MVP Swing 应用程序,我也对它们感兴趣。提前致谢!

最佳答案

正如所讨论的here ,Swing MVC 取决于 observer pattern用于将模型更改传播回任何监听 View 。因此,很大程度上取决于 JDialog 中的组件。如果您的对话框必须是无模式的,则示例 herehere可能会有所帮助。

关于java - MVC/MVP 在 Swing 应用程序中如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16418668/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com