我的程序中有几个类,但现在我们只需要担心其中两个: GUI 和逻辑。
GUI 类委托(delegate)给 Logics 类:
Logics logics = new Logics();
这是因为我希望 GUI 类调用我在 Logics 类中的方法。
但现在我还想从 Logics 类中调用 GUI 中的方法。具体来说,我希望逻辑能够在满足某些特定条件(在逻辑类中检查)时使 GUI 类(JDialog)中的弹出框可见。
我该如何去做呢?我无法从逻辑委派给 GUI,因为那样我会出现溢出(来回委派到无穷大)。
有人有什么建议吗? :)
-谢谢
最佳答案
也许可以为 Logics 类提供显示对话框的服务。 GUI 类可以实现一个名为 DialogService(或其他)的接口(interface),该接口(interface)定义了显示对话框的方法。然后您可以调用:
Logics logics = new Logics(this);
不需要 Logics 类直接访问 GUI 类。
关于Java:如何从 GUI 已委托(delegate)给的类打开弹出窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12897304/