2010-12-03 88 views
3

我们有一个Java Swing应用程序,其中包含诸如JTable,JCombobox,JTextArea和许多其他Swing组件的组件。我们可以在同一应用程序的其他实例中重用Java Swing应用程序组件吗?

现在有,说我们需要创建多个屏幕/的同一个Java Swing应用程序副本的要求。对于例如如果我主要的Java Swing应用程序是X,然后我要创建相同的应用程序A,B,C,d,...一样X.

所以这里有我们不应该建立X应用程序多了一些明显的设计约束倍。我们应该一次创建它,并利用它们来创建其他应用程序A,B,C,d ....

这里有一个问题,这些A,B,C ...的应用程序可能会或可能不会亚X的这意味着,A是具有较少的Swing组件然后X.

有一种方式储存类文件,并从它创建应用程序,但怎么样Swing组件,如何才能重新使用它们?我们可以在哪里储存它们?

这是一种设计问题。任何想法..

+1

我不知道我理解你的问题。 Swing组件就像其他任何类一样。默认情况下,如列出的JTable等默认位于JDK库中,因此可供所有应用程序使用。 – 2010-12-03 09:56:42

+0

没有像所有组件JTable等应该只创建一次,我们应该在同一应用程序的其他副本中使用它们。对于例如X应用程序具有JTable,因此它现在将被创建。应用程序将使用它并且B应用程序不会使用它。所以我们需要创建一些类似于所有Swing组件对象的池,并使用它来创建主要Swing应用程序的副本。 – u449355 2010-12-03 10:04:30

回答

3

我认为你能做的最好的是,在设计,你可以塞东西进出的方式您的应用程序。所以,这里最适合的插件/模块体系结构。您可以设计基于您的组件模块;如果应用程序需要一个模块/插件,那么安装它,否则不要。就像我们使用我们的IDE一样,比如Netbeans,Eclipse,IntelliJ。

由于这是一个Swing应用程序,我会强烈建议考虑Netbeans Platform

-1

所有的Swing组件都是可串行化的。我认为你可以创建JPanel,显示它,序列化它,然后恢复并再次显示。我相信这个无血统的小组将分开显示。

用简单的面板试一试。如果有效,请尝试将此技术应用于您的应用程序。

相关问题