2012-11-02 32 views
1

我有一个代码设计问题。让我解释一下情景,然后解释一下这个问题。我有2个以下面板 enter image description here子框架调用父框架。代码设计

基本上,第一个面板上点击开始,打开第二个面板。在第二个面板上选择文件(背景蓝色)。该文件需要在第一个面板的编辑器窗格中打开。

的问题是:什么是好的做法去做。我的面板都是单独的类。目前第二个面板保留对第一个面板的引用。在选择时,调用第一个类的相应方法输出csv。这是一个糟糕的设计。 子框架应该如何刷新父框架的一个方面?

回答

2
  • 的使用JDialog(parent, modal)代替JFrame,可能是取决于形态

  • 的创建JDialog只有一次,重复使用该容器另一个事件从父

  • JDialog.setDefaultCloseOperation(JDialog.HIDE_ON_CLOSE)来了,然后每一个后续行动只有约setVisible(true/false)包裹在invokeLater()

  • 然后返回(检查是否c ontents改,改回父

  • 你可以放在那里验证用户的行动从JOptionPane("DYW to save changes ??"))

+0

能否请您解释一下,最后2分?有点不清楚 – Jatin

+0

你可以描述你可以将数据从一个类填充到另一个类(好设计),然后你必须检查是否有一些变化,和/或所有数据对父窗口有效,你可以触发由用户侧面验证(验证后/或验证未通过)下一个用户的动作,这个动作可以被传递,验证从rulles retuns有些异常,或使用能roll_back整个动作(什么都没有发生,没有什么增加,EI) – mKorbel

+0

但是JDIalog将如何返回文件名? – Jatin