jjzjj

VetoableChangeListener

全部标签

java - 禁止在 JTabbedPane 中更改选项卡

我试图阻止用户在当前选项卡无效时更改选项卡。所以当他点击一个选项卡时,我想检查当前是否“有效”,如果不是,则留在当前选项卡上。我尝试使用无效的VetoableChangeListener,代码永远不会进入vetoableChange方法:jTabbedPane.addVetoableChangeListener(newVetoableChangeListener(){@OverridepublicvoidvetoableChange(PropertyChangeEventevt)throwsPropertyVetoException{if(!isCurrentTabValid()){t

java - PropertyChangeListener 和 VetoableChangeListener 有什么区别?

一切都在问题的标题中。您能否提供一些我们使用PropertyChangeListener和VetoableChangeListener的用例? 最佳答案 主要区别在于PropertyChangeListener应用于绑定(bind)属性,而VetoableChangeListener应用于约束属性。boundproperty只是一个属性,而constrained属性是一个属性,听众可以在其上表达自己关于将要进行的更改的属性:他们可以拒绝这种变化的发生。实际发生的是,当您通知可否决的属性更改时,您会做类似的事情VetoableChan