从另一个类在框架中启用jbutton-guibuilder

zaq34kh6  于 2021-06-30  发布在  Java
关注(0)|答案(2)|浏览(275)

我使用netbeanside创建了一个jframe。一旦按下submit按钮来处理我在另一个类中处理的一个操作,我就禁用了它。如果操作成功完成,我需要在该帧中启用名为next的按钮,如果失败,我需要在同一帧中再次启用submit按钮。因为它们是私人的,所以我不能从其他班级进入。如果我为这个jframe类按钮创建对象还没有启用,我想整个框架已经通过调用函数initcomponents()再次被调用了。
1) 如何在另一个类中执行某些操作后在该帧中启用按钮。

pn9klfpd

pn9klfpd1#

通常,我会提供一种方法,使主窗体可以注册 ChangeListener 到子窗体。
然后在子窗体中提供一个返回 boolean 表明所需信息已填写或(即 isFormValid )
当子窗体的任何特定部分发生更改时,它将触发一个更改事件,通知已注册的侦听器子窗体(在本例中是父窗体)已更改。
然后父窗体检查子窗体的状态,并可以就它应该做什么提出异议。。。
这是观察者模式的基本概念,可以通过swing api看到。
它使您的代码解耦,并防止不必要的对象暴露(您不希望子窗体具有修改父窗体的能力:p)

nc1teljy

nc1teljy2#

您需要一种方法来访问按钮,或者更确切地说,需要一个来自其他类的方法来为您启用按钮。
或者您可以有一个指示成功或失败的返回值,并根据该值可以从actionperformed方法更改按钮状态。

相关问题