问题标签 [propertychangelistener]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 为什么这个 PropertyChangeListener 不起作用?
我正在为我的开源库droidQuery添加对属性观察的支持,但是propertyChange
在我的测试中没有调用该方法。我需要做什么才能使其正常工作?这是我的代码:
ViewObserver.java
droidQuery.java 的相关部分(其余部分可在 github 上找到):
java - 只听用户更改 JSplitPane 分隔线位置?
我正在尝试实现一个将其状态保存到某个配置文件的 JSplitPane,所以我添加了一个像这样的侦听器:
它可以很好地处理它,但是由于某种原因,有时 Swing 代码本身会更改此属性并更改分隔符位置,关于如何克服这个问题的任何建议?
java - addPropertyChangeListener 上的 NullPointerException
我创建了一个简单的 LED,它接收来自许多数字组件(例如开关/门)中的任何一个的输入。问题是,当尝试实现 PropertyChangeListener 接口时,我得到了 NullPointerException。使用下面的代码,如果我只是将它添加到 JFrame 表单并尝试运行它,我会得到这个异常。我已经实现了与门/开关相同的 LED,但是由于某种原因,我的代码会产生错误。任何帮助表示赞赏。
java - JProgressBar 不更新
我在使用 JprogressBar 'pb1' 时遇到问题 - 它不会更新。我尝试了不同的方法来使其工作,但似乎我找不到我哪里出错了。propertyChangeListener 可能存在问题,我不完全确定。
java - 无法在扩展 PropertyChangeListener 的 Main 类中拦截 PropertyChangeEvent,为什么?
我是 Java Swing开发的新手,在我的 GUI 中使用PropertyChangeListener时发现了一些困难。
所以我有一个实现PropertyChangeListener接口的Main类:
然后我有LoginFrame类:
正如您在此LoginFrame类中看到的,当用户单击JButton时,会执行actionPerformed方法(并且它有效,因为我通过 println 看到它)并在此方法中通过以下行执行firePropertyChange()方法:
然后在Main类中,我有propertyChange()方法必须拦截此事件,但这似乎不起作用,因为不要输入此方法,也不要在其中打印“ GUI ---> propertyChange()”我的控制台
为什么?我错过了什么?
java - 使用 PropertyChangeListener 接口是不是一个好方法?
我对fireIndexedPropertyChange()方法的深层含义和使用有疑问,该方法会触发一个事件,该事件将由我在另一个类中声明的propertyChange()侦听器拦截和处理。
例如,在使用 JButton 实现登录 GUI(显示登录表单)的类中,当用户单击我的按钮时,我会执行此方法:
因此,当尚未登录的用户单击我的按钮时,将执行此方法并触发新的PropertyChange事件。
我的PropertyChange事件本身包含以下信息:
propertyName是可以更改的属性的名称(在我的示例中名为loginResult ,因为我有一个名为loginResult的布尔变量,如果用户可以在单击按钮时登录,则值为 true,否则为 false
旧值是可以更改的属性的旧值(在我的示例中为 false,因为如果用户看到登录窗口,则意味着它没有登录并且loginResul=false
新值:在这种情况下,它是loginResult变量的内容(如果用户正在系统中登录,则为 true)
因此,此PropertyChange事件将被我的propertyChange()方法(在侦听器类中声明)拦截,该方法根据这些参数处理它:例如以下列方式:
** 如果 propertyName 是 loginResult 并且如果新值为 true 则不再显示登录窗口,而是显示主应用程序窗口**
我的推理是否正确,它可能是使用PropertyChangeListener接口的好方法?
肿瘤坏死因子
安德烈亚
java - 这个关于 PropertyChangeListener 的推理是否正确?
我对PropertyChangeListener
界面的使用有些疑惑。
我有一个名为GUI
实现PropertyChangeListener
接口的类。
在这个类中,我有以下方法来创建和显示一个JFrame
(LoginFrame
是扩展的自定义类JFrame
):
所以,在我的LoginFrame
对象上我添加了一个PropertyChangeListener
. 所以我认为我正在添加一种机制,当更改此对象中的属性值时,它会通知此更改,该更改将由以下方法处理(在我的GUI
类中声明):
在我的LoginFrame
班级的特定情况下,我有一个JButton
如果单击触发将由前一个方法处理的事件,以这种方式:
我的推理正确吗?
谢谢
安德烈亚
java - 为什么这个 propertyChange() 方法不能处理这个事件?
我是Swing开发的新手,使用实现PropertyChangeListener接口的类时遇到以下问题。
所以我有以下GUI类(我只发布这个类的有趣部分):
然后我有MainFram类,它扩展了一个JFrame,其中有一个JButton来执行注销操作,如下所示:
因此,当单击我的JButton时,将执行此方法:
事实上,当我在控制台中单击按钮时,会出现输出:
“点击了 logOutButton !!!,firePropertyChange() 将启动”
然后我执行firePropertyChange()方法,我希望这个事件是由GUI类的这个方法处理的:
但不工作,似乎没有进入firePropertyChange()方法?
为什么?我错过了什么?
肿瘤坏死因子
安德烈亚
java - 为什么 JFrame 打开时会触发此属性更改事件?
我有一个 2 JFormattedTextField
s,它以不同的形式输入相同的信息。当用户更改另一项时,我希望进行一项更改。在使用 s 之前我已经实现了类似的东西PropertyChangeListener
,但是这次我遇到了一个奇怪的错误。
当我JFrame
打开PropertyChangeListener
事件时,没有明显的原因触发。getNewValue()
on 的值为PropertyChangeEvent
空。
这是引用我的标签的所有代码:
然后在我的 JFrame 构造函数中:
如您所见,我没有在代码中设置值,并且NullPointerException
在我有机会输入任何内容之前调用事件(并生成一个)。我还没有编写监听器delayField
。
java - 列表内对象的 PropertyChangeListener
我的问题是,当我从模型的属性中更改值时,PropertyChangeSupport
会触发但PropertyChangeListener
永远不会到达视图中的值。所以我想我通过添加监听器做错了。
任何类型的输入表示赞赏。
当我启动应用程序时,我目前得到以下输出:
监听器 zu stackOverflow.allInOne.MyPropertyChangeListener@cee47f1 hinzugefügt mit property btnText java.beans.PropertyChangeEvent[propertyName=btnText; 旧值=空;新值=空;传播标识=空;source=stackOverflow.allInOne.Model2@6fb525d8] 收到火
所以我有点困惑为什么我会着火,因为我在添加监听器之前设置了 btnTxt 的值。无论如何,如果我更改字段中的文本,那么我将得到以下输出:
动作事件触发控制器设置新值模型触发
所以正如我在最初的问题中提到的那样,在我看来
并不总是有效。