Java中给多个按钮添加监听(非常多),要求: 能够判断按钮属性(如:背景色,文本)并执行代码

Java中给多个按钮添加监听(非常多),要求: 能够判断按钮属性(如:背景色,文本)并执行代码,第1张

不知道你这个是不是swing实现。类实现事件接口,然后在类中重新事件方法,方法中可以判断按钮id来具体 *** 作;伪代码实现如下

public class MyFrame extends JFrame implements ActionListener{

public MyFrame() {

....

button2.addActionListener(this)

}

/**

* 按钮二的事件响应在此

*/

public void actionPerformed(ActionEvent e) {

if(e.getSource()==button2){

showMsg("你按下了" + button2.getText())

}

...

}

}

不太理解你的疑问在哪里,因为 Vue 不能侦测的是直接对著数组的某个索引赋值,例如 replys[1] = {},但是你这边是对数组里面的某个元素赋值, Vue 是可以侦测到的,Vue是通过监测 get, set 来得知数据是否更新,而数组的索引是没有 get、set

Vue watch 用于监测数据变化,可以方便开发中对于数据的变化做出一些处理。关于deep、immdiate属性场景使用总结如 下,如有疏漏,烦请指正。

watch监听只有在数据变化时才会执行监听函数。父组件向子组件动态传值时,子组件props首次获取到父组件传来的默认值时,此时也需要执行watch监听函数。则需设置immediate:true.

需要监听复杂数据(对象)内部属性的变化时,设置deep属性。Vue会递归的侦听数据和属性的变化(性能消耗较大)。也就是给所有数据和属性添加handler执行函数。

监听notes对象,未添加deep:

执行效果

监听notes对象,,添加deep属性:

性能优化

鉴于deep属性Vue性能消耗较大,对于要监听数据中某个属性的响应时,可以只给对应属性添加deep。如下示例,只需侦听属性b的响应变化。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11683782.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存