大家好。我在一种情况下,我需要创建一个GUI来创建各种类的对象,我想这样做在一个通用的方式。更具体地说,整个概念是为商店创造各种产品。对于本例,产品类别将是"笔记本"one_answers"笔"。从列表中选择产品类别后,将出现一个表单JFrame窗口,提示用户提供有关该产品的更多细节。
然而,并非所有产品都需要相同的数据。假设我们有一个要求页码为Integer的Notebook类,以及一个要求笔颜色为String的Pen类。显然,对于每种产品类型,我们需要以不同的方式处理该窗口的创建。
所以我的问题是,我应该在哪里处理这个窗口的创建?是否可以在每个数据类中创建创建所需表单的完整JFrame的方法,或者我是否应该从数据类中单独处理gui ?
提前感谢!
您不会希望gui与这些类交织在一起。看看MVC可能是个好主意。模型-视图-控制器。
这个想法是你的GUI从你的模型中分离出来,在它们之间有一个控制器,它处理从你的GUI中移动数据和向你的GUI中移动数据。有两种常见的变体,要么让模型通知视图它有可用的新数据,要么让模型再次ping控制器,然后控制器通知视图这个新数据。
这是一个架构模式。它们为软件工程中常见的问题提供了一些解决方案,阅读它们是一个好主意:-)
使用MVC(模型视图控制器),这是一个架构模式,用于将数据从用户界面中分离出来,数据(你需要的方法等)应该放在模型中,视图处理你的界面组件(面板,框架等),控制器将视图的输入与模型中的数据联系起来。
在你的情况下,如果你有一个笔记本对象,你应该通知控制器,然后通知用户界面,为你显示所需的表单。