当前位置: 首页 > 知识库问答 >
问题:

MVP、JavaFx和组件引用

夏建弼
2023-03-14

我研究了所有流行的GUI模式--MVP、MVC、MVVM,最后我决定实现MVP(监督控制器)。所以我有以下html" target="_blank">对象(!)。阶段<-view<->模型。它是重要的舞台!=视图,它是另一个物体。视图和模型数据绑定之间。此外,我还有一个演示器(控制器),它处理所有事件并处理视图和模型,所以view<-viewinterface<-controller->model。现在的问题是如何在视图中获得对标签、textAreas等的引用。Javafx允许使用@fxml注释将这些组件注入Controller。然而,使用MVP,我需要这些组件在视图中,因为视图的所有逻辑都在视图中,我不需要它们在控制器中。我知道的唯一解决办法是:

public class MyView{
 private Button button;
 public MyView(){
  ...
  button=(Button) root.lookup("#myButton");
 }
}

即通过ID获取引用。但是我不喜欢它。或者我做错了什么,或者我理解错了什么,但我认为存在更好的解决方案。请帮我找到它。

共有1个答案

李振国
2023-03-14

JavaFX被设计为使用MVC模式。因此,使用MVC比MVP容易得多。在MVP中,演示者负责对要显示的数据进行格式化。在JavaFX中,它是通过视图自动完成的。下面是JavaFX MVC的快速概述:

模型-您在应用程序中使用的域数据/数据结构(例如,个人、雇主、课程等)

视图-应用程序及其模型的UI定义。创建视图的首选方式是通过fxml文件,该文件实质上就是JavaFX MVC中的视图。

如果需要使用fxml构建UI的帮助:http://docs.oracle.com/javase/8/javafx/api/javafx/fxml/doc-files/introduction_to_fxml.html

本教程介绍JavaFX中MVC的基础知识以及每个组件如何与其他组件通信:http://code.makery.ch/library/javafx-8-tutorial/part1/

 类似资料:
  • 我有一个非常简单的fxml文件,带有一个复选框: 非常简单的controller类如下:

  • MVP

    模型-视图-展示器(MVP)是MVC设计模式的一个衍生模式,它专注于提升展现逻辑.它来自于上个世纪九十年代早期的一个叫做Taligent的公司,当时他们正工作于一个基于C++ CommonPoint环境的模型.而MVC和MVP的目标都直指对整个多组件关注点的分离,它们之间有一些基础上的不同。 为了要做出总结的目的,我们将专注于最适合于基于Web架构的MVP版本。 模型,视图&展示器 MVP中的P代

  • 我已经和匕首2一起工作了一段时间,我还在试图弄清楚一些事情。我仍然不能很好地管理的一件事是为不同的情况设置模块和组件,比如一个有几个片段的活动。我看过很多实现,大多数时候都有点不同。 所以,让我公开我目前的应用程序结构使用MVP,我想要一些意见,如果我的实现是好的或不是。 现在,MainActivity有3个片段,我将为片段创建3个模块和1个组件 然后我必须实例化Dagger,首先在我的应用程序类

  • If you're confused about Android development, maybe it's time to open the door to a new world . TMVP is a Aop Architecture with Apt、AspectJ、Javassisit,which based on Realm+Databinding+MVP+Retrofit+Rxj

  • Android-MVP ...Simple Android MVP Architecture sample using the Github API Info The Github Logo and GitHub icons are a property of Github Screenshots Architecture This app is built using the MVP - Mod

  • 引言 MVC时代:在MVC模型里,更关注的Model的不变,业务需求通常是Model不变,同时有多个对Model的不同显示,即View。所以,在MVC模型里,Model不依赖于View,但是View是依赖于Model的。不仅如此,因为有一些业务逻辑在View里实现了,导致要更改View也是比较困难的,至少那些业务逻辑是无法重用的。 MVP时代:在MVP里,Presenter完全把Model和Vie